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. 4 5 #ifndef CONTENT_BROWSER_RENDERER_HOST_DIP_UTIL_H_ 6 #define CONTENT_BROWSER_RENDERER_HOST_DIP_UTIL_H_ 7 8 #include "content/common/content_export.h" 9 10 namespace gfx { 11 class Point; 12 class Rect; 13 class Size; 14 } // namespace gfx 15 16 namespace content { 17 class RenderWidgetHostView; 18 19 // Returns scale factor of the display nearest to |view|. 20 // Returns 1.0f if the platform does not support DIP. 21 CONTENT_EXPORT float GetScaleFactorForView(const RenderWidgetHostView* view); 22 23 // Utility functions that convert point/size/rect between DIP and pixel 24 // coordinate system. 25 CONTENT_EXPORT gfx::Point ConvertViewPointToDIP( 26 const RenderWidgetHostView* view, const gfx::Point& point_in_pixel); 27 CONTENT_EXPORT gfx::Size ConvertViewSizeToPixel( 28 const RenderWidgetHostView* view, const gfx::Size& size_in_dip); 29 CONTENT_EXPORT gfx::Rect ConvertViewRectToPixel( 30 const RenderWidgetHostView* view, const gfx::Rect& rect_in_dip); 31 32 CONTENT_EXPORT gfx::Size ConvertSizeToDIP( 33 float scale_factor, const gfx::Size& size_in_pixel); 34 CONTENT_EXPORT gfx::Rect ConvertRectToDIP( 35 float scale_factor, const gfx::Rect& rect_in_pixel); 36 CONTENT_EXPORT gfx::Size ConvertSizeToPixel( 37 float scale_factor, const gfx::Size& size_in_pixel); 38 CONTENT_EXPORT gfx::Rect ConvertRectToPixel( 39 float scale_factor, const gfx::Rect& rect_in_dip); 40 41 } // namespace content 42 43 #endif // CONTENT_BROWSER_RENDERER_HOST_DIP_UTIL_H_ 44