15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Copyright (c) 2011 The Chromium Authors. All rights reserved.
25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file.
45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifndef PPAPI_THUNK_PPB_VIEW_API_H_
65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define PPAPI_THUNK_PPB_VIEW_API_H_
75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "ppapi/thunk/ppapi_thunk_export.h"
95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace ppapi {
115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)struct ViewData;
135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace thunk {
155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)class PPAPI_THUNK_EXPORT PPB_View_API {
175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) public:
185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  virtual ~PPB_View_API() {}
195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  // Returns the view data struct.
215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  virtual const ViewData& GetData() const = 0;
222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  virtual PP_Bool GetRect(PP_Rect* viewport) const = 0;
242a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  virtual PP_Bool IsFullscreen() const = 0;
252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  virtual PP_Bool IsVisible() const = 0;
262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  virtual PP_Bool IsPageVisible() const = 0;
272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  virtual PP_Bool GetClipRect(PP_Rect* clip) const = 0;
282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  virtual float GetDeviceScale() const = 0;
292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  virtual float GetCSSScale() const = 0;
306d86b77056ed63eb6871182f42a9fd5f07550f90Torne (Richard Coles)  virtual PP_Bool GetScrollOffset(PP_Point* offset) const = 0;
315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)};
325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}  // namespace thunk
345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}  // namespace ppapi
355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif // PPAPI_THUNK_PPB_VIEW_API_H_
37