Save errno for logging before potentially overwriting it.
[chromium-blink-merge.git] / content / browser / renderer_host / dip_util.h
bloba7e1876ec797810254c6d56a944b649a39c29680
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
3 // found in the LICENSE file.
5 #ifndef CONTENT_BROWSER_RENDERER_HOST_DIP_UTIL_H_
6 #define CONTENT_BROWSER_RENDERER_HOST_DIP_UTIL_H_
8 #include "content/common/content_export.h"
9 #include "ui/base/layout.h"
11 namespace gfx {
12 class Point;
13 class Rect;
14 class Size;
15 } // namespace gfx
17 namespace content {
18 class RenderWidgetHostView;
20 // Returns scale factor of the display nearest to |view|.
21 // Returns ui::SCALE_FACTOR_100P if the platform does not support DIP.
22 CONTENT_EXPORT ui::ScaleFactor GetScaleFactorForView(
23 const RenderWidgetHostView* view);
25 // Utility functions that convert point/size/rect between DIP and pixel
26 // coordinate system.
27 CONTENT_EXPORT gfx::Point ConvertViewPointToDIP(
28 const RenderWidgetHostView* view, const gfx::Point& point_in_pixel);
29 CONTENT_EXPORT gfx::Size ConvertViewSizeToPixel(
30 const RenderWidgetHostView* view, const gfx::Size& size_in_dip);
31 CONTENT_EXPORT gfx::Rect ConvertViewRectToPixel(
32 const RenderWidgetHostView* view, const gfx::Rect& rect_in_dip);
34 CONTENT_EXPORT gfx::Size ConvertSizeToDIP(
35 float scale_factor, const gfx::Size& size_in_pixel);
36 CONTENT_EXPORT gfx::Rect ConvertRectToDIP(
37 float scale_factor, const gfx::Rect& rect_in_pixel);
38 CONTENT_EXPORT gfx::Rect ConvertRectToPixel(
39 float scale_factor, const gfx::Rect& rect_in_dip);
41 } // namespace content
43 #endif // CONTENT_BROWSER_RENDERER_HOST_DIP_UTIL_H_