| // 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_ |