1// Copyright (c) 2011 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 PPAPI_THUNK_PPB_VIEW_API_H_
6#define PPAPI_THUNK_PPB_VIEW_API_H_
7
8#include "ppapi/thunk/ppapi_thunk_export.h"
9
10namespace ppapi {
11
12struct ViewData;
13
14namespace thunk {
15
16class PPAPI_THUNK_EXPORT PPB_View_API {
17 public:
18  virtual ~PPB_View_API() {}
19
20  // Returns the view data struct.
21  virtual const ViewData& GetData() const = 0;
22
23  virtual PP_Bool GetRect(PP_Rect* viewport) const = 0;
24  virtual PP_Bool IsFullscreen() const = 0;
25  virtual PP_Bool IsVisible() const = 0;
26  virtual PP_Bool IsPageVisible() const = 0;
27  virtual PP_Bool GetClipRect(PP_Rect* clip) const = 0;
28  virtual float GetDeviceScale() const = 0;
29  virtual float GetCSSScale() const = 0;
30  virtual PP_Bool GetScrollOffset(PP_Point* offset) const = 0;
31};
32
33}  // namespace thunk
34}  // namespace ppapi
35
36#endif // PPAPI_THUNK_PPB_VIEW_API_H_
37