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

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

Issue 1417023002: Remove some implicit Point to PointF conversions, add helpers. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: pointfconvert-views: extrachange Created 5 years, 2 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) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 <X11/extensions/Xrandr.h> 7 #include <X11/extensions/Xrandr.h>
8 #include <X11/Xlib.h> 8 #include <X11/Xlib.h>
9 9
10 // It clashes with out RootWindow. 10 // It clashes with out RootWindow.
(...skipping 27 matching lines...) Expand all
38 38
39 double GetDeviceScaleFactor() { 39 double GetDeviceScaleFactor() {
40 float device_scale_factor = 1.0f; 40 float device_scale_factor = 1.0f;
41 if (views::LinuxUI::instance()) 41 if (views::LinuxUI::instance())
42 device_scale_factor = 42 device_scale_factor =
43 views::LinuxUI::instance()->GetDeviceScaleFactor(); 43 views::LinuxUI::instance()->GetDeviceScaleFactor();
44 return device_scale_factor; 44 return device_scale_factor;
45 } 45 }
46 46
47 gfx::Point PixelToDIPPoint(const gfx::Point& pixel_point) { 47 gfx::Point PixelToDIPPoint(const gfx::Point& pixel_point) {
48 return ToFlooredPoint(ScalePoint(pixel_point, 1.0f / GetDeviceScaleFactor())); 48 return gfx::ScaleToFlooredPoint(pixel_point, 1.0f / GetDeviceScaleFactor());
49 } 49 }
50 50
51 gfx::Point DIPToPixelPoint(const gfx::Point& dip_point) { 51 gfx::Point DIPToPixelPoint(const gfx::Point& dip_point) {
52 return ToFlooredPoint(gfx::ScalePoint(dip_point, GetDeviceScaleFactor())); 52 return gfx::ScaleToFlooredPoint(dip_point, GetDeviceScaleFactor());
53 } 53 }
54 54
55 std::vector<gfx::Display> GetFallbackDisplayList() { 55 std::vector<gfx::Display> GetFallbackDisplayList() {
56 ::XDisplay* display = gfx::GetXDisplay(); 56 ::XDisplay* display = gfx::GetXDisplay();
57 ::Screen* screen = DefaultScreenOfDisplay(display); 57 ::Screen* screen = DefaultScreenOfDisplay(display);
58 int width = WidthOfScreen(screen); 58 int width = WidthOfScreen(screen);
59 int height = HeightOfScreen(screen); 59 int height = HeightOfScreen(screen);
60 gfx::Size physical_size(WidthMMOfScreen(screen), HeightMMOfScreen(screen)); 60 gfx::Size physical_size(WidthMMOfScreen(screen), HeightMMOfScreen(screen));
61 61
62 gfx::Rect bounds_in_pixels(0, 0, width, height); 62 gfx::Rect bounds_in_pixels(0, 0, width, height);
(...skipping 252 matching lines...) Expand 10 before | Expand all | Expand 10 after
315 if (!gfx::Display::HasForceDeviceScaleFactor()) { 315 if (!gfx::Display::HasForceDeviceScaleFactor()) {
316 display.SetScaleAndBounds(device_scale_factor, crtc_bounds); 316 display.SetScaleAndBounds(device_scale_factor, crtc_bounds);
317 } 317 }
318 318
319 if (has_work_area) { 319 if (has_work_area) {
320 gfx::Rect intersection_in_pixels = crtc_bounds; 320 gfx::Rect intersection_in_pixels = crtc_bounds;
321 intersection_in_pixels.Intersect(work_area_in_pixels); 321 intersection_in_pixels.Intersect(work_area_in_pixels);
322 // SetScaleAndBounds() above does the conversion from pixels to DIP for 322 // SetScaleAndBounds() above does the conversion from pixels to DIP for
323 // us, but set_work_area does not, so we need to do it here. 323 // us, but set_work_area does not, so we need to do it here.
324 display.set_work_area(gfx::Rect( 324 display.set_work_area(gfx::Rect(
325 gfx::ToFlooredPoint( 325 gfx::ScaleToFlooredPoint(intersection_in_pixels.origin(),
326 gfx::ScalePoint(intersection_in_pixels.origin(), 326 1.0f / display.device_scale_factor()),
327 1.0f / display.device_scale_factor())),
328 gfx::ScaleToFlooredSize(intersection_in_pixels.size(), 327 gfx::ScaleToFlooredSize(intersection_in_pixels.size(),
329 1.0f / display.device_scale_factor()))); 328 1.0f / display.device_scale_factor())));
330 } 329 }
331 330
332 switch (crtc->rotation) { 331 switch (crtc->rotation) {
333 case RR_Rotate_0: 332 case RR_Rotate_0:
334 display.set_rotation(gfx::Display::ROTATE_0); 333 display.set_rotation(gfx::Display::ROTATE_0);
335 break; 334 break;
336 case RR_Rotate_90: 335 case RR_Rotate_90:
337 display.set_rotation(gfx::Display::ROTATE_90); 336 display.set_rotation(gfx::Display::ROTATE_90);
(...skipping 23 matching lines...) Expand all
361 change_notifier_.NotifyDisplaysChanged(old_displays, displays_); 360 change_notifier_.NotifyDisplaysChanged(old_displays, displays_);
362 } 361 }
363 362
364 //////////////////////////////////////////////////////////////////////////////// 363 ////////////////////////////////////////////////////////////////////////////////
365 364
366 gfx::Screen* CreateDesktopScreen() { 365 gfx::Screen* CreateDesktopScreen() {
367 return new DesktopScreenX11; 366 return new DesktopScreenX11;
368 } 367 }
369 368
370 } // namespace views 369 } // namespace views
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698