|  | // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 
|  | // Use of this source code is governed by a BSD-style license that can be | 
|  | // found in the LICENSE file. | 
|  |  | 
|  | #ifndef PPAPI_CPP_DEV_VIEW_DEV_H_ | 
|  | #define PPAPI_CPP_DEV_VIEW_DEV_H_ | 
|  |  | 
|  | #include "ppapi/cpp/view.h" | 
|  |  | 
|  | namespace pp { | 
|  |  | 
|  | // ViewDev is a version of View that exposes under-development APIs related to | 
|  | // HiDPI | 
|  | class ViewDev : public View { | 
|  | public: | 
|  | ViewDev() : View() {} | 
|  | ViewDev(const View& other) : View(other) {} | 
|  |  | 
|  | virtual ~ViewDev() {} | 
|  |  | 
|  | /// GetDeviceScale returns the scale factor between device pixels and DIPs | 
|  | /// (also known as logical pixels or UI pixels on some platforms). This allows | 
|  | /// the developer to render their contents at device resolution, even as | 
|  | /// coordinates / sizes are given in DIPs through the API. | 
|  | /// | 
|  | /// Note that the coordinate system for Pepper APIs is DIPs. Also note that | 
|  | /// one DIP might not equal one CSS pixel - when page scale/zoom is in effect. | 
|  | /// | 
|  | /// @return A <code>float</code> value representing the number of device | 
|  | /// pixels per DIP. | 
|  | float GetDeviceScale() const; | 
|  |  | 
|  | /// GetCSSScale returns the scale factor between DIPs and CSS pixels. This | 
|  | /// allows proper scaling between DIPs - as sent via the Pepper API - and CSS | 
|  | /// pixel coordinates used for Web content. | 
|  | /// | 
|  | /// @return A <code>float</code> value representing the number of DIPs per CSS | 
|  | /// pixel. | 
|  | float GetCSSScale() const; | 
|  | }; | 
|  |  | 
|  | }  // namespace pp | 
|  |  | 
|  | #endif  // PPAPI_CPP_DEV_VIEW_DEV_H_ |