11d1a2af599bfd91357cbc44b3cf20b1ab104f4abDavid 'Digit' Turner// Copyright (c) 2012 The Chromium Authors. All rights reserved. 21d1a2af599bfd91357cbc44b3cf20b1ab104f4abDavid 'Digit' Turner// Use of this source code is governed by a BSD-style license that can be 31d1a2af599bfd91357cbc44b3cf20b1ab104f4abDavid 'Digit' Turner// found in the LICENSE file. 41d1a2af599bfd91357cbc44b3cf20b1ab104f4abDavid 'Digit' Turner 51d1a2af599bfd91357cbc44b3cf20b1ab104f4abDavid 'Digit' Turner#ifndef CONTENT_BROWSER_RENDERER_HOST_DIP_UTIL_H_ 61d1a2af599bfd91357cbc44b3cf20b1ab104f4abDavid 'Digit' Turner#define CONTENT_BROWSER_RENDERER_HOST_DIP_UTIL_H_ 71d1a2af599bfd91357cbc44b3cf20b1ab104f4abDavid 'Digit' Turner 81d1a2af599bfd91357cbc44b3cf20b1ab104f4abDavid 'Digit' Turner#include "content/common/content_export.h" 91d1a2af599bfd91357cbc44b3cf20b1ab104f4abDavid 'Digit' Turner 101d1a2af599bfd91357cbc44b3cf20b1ab104f4abDavid 'Digit' Turnernamespace gfx { 111d1a2af599bfd91357cbc44b3cf20b1ab104f4abDavid 'Digit' Turnerclass Point; 121d1a2af599bfd91357cbc44b3cf20b1ab104f4abDavid 'Digit' Turnerclass Rect; 131d1a2af599bfd91357cbc44b3cf20b1ab104f4abDavid 'Digit' Turnerclass Size; 141d1a2af599bfd91357cbc44b3cf20b1ab104f4abDavid 'Digit' Turner} // namespace gfx 151d1a2af599bfd91357cbc44b3cf20b1ab104f4abDavid 'Digit' Turner 161d1a2af599bfd91357cbc44b3cf20b1ab104f4abDavid 'Digit' Turnernamespace content { 171d1a2af599bfd91357cbc44b3cf20b1ab104f4abDavid 'Digit' Turnerclass RenderWidgetHostView; 18aadb3b585bfe9f7ddd00d8c4276db4828665a81eDavid 'Digit' Turner 19aadb3b585bfe9f7ddd00d8c4276db4828665a81eDavid 'Digit' Turner// Returns scale factor of the display nearest to |view|. 20ad5a0ac8a11793472af654411a522270a4f1e5a1David 'Digit' Turner// Returns 1.0f if the platform does not support DIP. 21f3f3c9b864a902e10cefb0e666f2354672352fcaDavid 'Digit' TurnerCONTENT_EXPORT float GetScaleFactorForView(const RenderWidgetHostView* view); 22f3f3c9b864a902e10cefb0e666f2354672352fcaDavid 'Digit' Turner 23634e497c7add1ce732571203652d2c7169612905David 'Digit' Turner// Utility functions that convert point/size/rect between DIP and pixel 24f3f3c9b864a902e10cefb0e666f2354672352fcaDavid 'Digit' Turner// coordinate system. 25f3f3c9b864a902e10cefb0e666f2354672352fcaDavid 'Digit' TurnerCONTENT_EXPORT gfx::Point ConvertViewPointToDIP( 26f3f3c9b864a902e10cefb0e666f2354672352fcaDavid 'Digit' Turner const RenderWidgetHostView* view, const gfx::Point& point_in_pixel); 27f3f3c9b864a902e10cefb0e666f2354672352fcaDavid 'Digit' TurnerCONTENT_EXPORT gfx::Size ConvertViewSizeToPixel( 28f3f3c9b864a902e10cefb0e666f2354672352fcaDavid 'Digit' Turner const RenderWidgetHostView* view, const gfx::Size& size_in_dip); 29f3f3c9b864a902e10cefb0e666f2354672352fcaDavid 'Digit' TurnerCONTENT_EXPORT gfx::Rect ConvertViewRectToPixel( 30f3f3c9b864a902e10cefb0e666f2354672352fcaDavid 'Digit' Turner const RenderWidgetHostView* view, const gfx::Rect& rect_in_dip); 31f3f3c9b864a902e10cefb0e666f2354672352fcaDavid 'Digit' Turner 32f3f3c9b864a902e10cefb0e666f2354672352fcaDavid 'Digit' TurnerCONTENT_EXPORT gfx::Size ConvertSizeToDIP( 33f3f3c9b864a902e10cefb0e666f2354672352fcaDavid 'Digit' Turner float scale_factor, const gfx::Size& size_in_pixel); 34f3f3c9b864a902e10cefb0e666f2354672352fcaDavid 'Digit' TurnerCONTENT_EXPORT gfx::Rect ConvertRectToDIP( 35f3f3c9b864a902e10cefb0e666f2354672352fcaDavid 'Digit' Turner float scale_factor, const gfx::Rect& rect_in_pixel); 36f3f3c9b864a902e10cefb0e666f2354672352fcaDavid 'Digit' TurnerCONTENT_EXPORT gfx::Size ConvertSizeToPixel( 37f3f3c9b864a902e10cefb0e666f2354672352fcaDavid 'Digit' Turner float scale_factor, const gfx::Size& size_in_pixel); 38f3f3c9b864a902e10cefb0e666f2354672352fcaDavid 'Digit' TurnerCONTENT_EXPORT gfx::Rect ConvertRectToPixel( 39f3f3c9b864a902e10cefb0e666f2354672352fcaDavid 'Digit' Turner float scale_factor, const gfx::Rect& rect_in_dip); 40f3f3c9b864a902e10cefb0e666f2354672352fcaDavid 'Digit' Turner 41f3f3c9b864a902e10cefb0e666f2354672352fcaDavid 'Digit' Turner} // namespace content 42f3f3c9b864a902e10cefb0e666f2354672352fcaDavid 'Digit' Turner 43f3f3c9b864a902e10cefb0e666f2354672352fcaDavid 'Digit' Turner#endif // CONTENT_BROWSER_RENDERER_HOST_DIP_UTIL_H_ 44f3f3c9b864a902e10cefb0e666f2354672352fcaDavid 'Digit' Turner