Roll src/third_party/WebKit 5bc05e9:3d59927 (svn 202625:202627)
[chromium-blink-merge.git] / ppapi / thunk / ppb_flash_functions_api.h
blobb7462432b7321562c163d88bdcb2b5e859773c71
1 // Copyright (c) 2012 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.
5 #ifndef PPAPI_THUNK_PPB_FLASH_FUNCTIONS_API_H_
6 #define PPAPI_THUNK_PPB_FLASH_FUNCTIONS_API_H_
8 #include <string>
10 #include "ppapi/c/private/ppb_flash.h"
11 #include "ppapi/shared_impl/singleton_resource_id.h"
12 #include "ppapi/thunk/ppapi_thunk_export.h"
14 struct PP_BrowserFont_Trusted_Description;
16 namespace ppapi {
17 namespace thunk {
19 // This class collects all of the Flash interface-related APIs into one place.
20 class PPAPI_THUNK_EXPORT PPB_Flash_Functions_API {
21 public:
22 virtual ~PPB_Flash_Functions_API() {}
24 virtual PP_Var GetProxyForURL(PP_Instance instance,
25 const std::string& url) = 0;
26 virtual void UpdateActivity(PP_Instance instance) = 0;
27 virtual PP_Bool SetCrashData(PP_Instance instance, PP_FlashCrashKey key,
28 PP_Var value) = 0;
29 virtual double GetLocalTimeZoneOffset(PP_Instance instance, PP_Time t) = 0;
30 virtual PP_Var GetSetting(PP_Instance instance, PP_FlashSetting setting) = 0;
31 virtual void SetInstanceAlwaysOnTop(PP_Instance instance, PP_Bool on_top) = 0;
32 virtual PP_Bool DrawGlyphs(
33 PP_Instance instance,
34 PP_Resource pp_image_data,
35 const PP_BrowserFont_Trusted_Description* font_desc,
36 uint32_t color,
37 const PP_Point* position,
38 const PP_Rect* clip,
39 const float transformation[3][3],
40 PP_Bool allow_subpixel_aa,
41 uint32_t glyph_count,
42 const uint16_t glyph_indices[],
43 const PP_Point glyph_advances[]) = 0;
44 virtual int32_t Navigate(PP_Instance instance,
45 PP_Resource request_info,
46 const char* target,
47 PP_Bool from_user_action) = 0;
48 virtual PP_Bool IsRectTopmost(PP_Instance instance, const PP_Rect* rect) = 0;
49 virtual void InvokePrinting(PP_Instance instance) = 0;
51 static const SingletonResourceID kSingletonResourceID = FLASH_SINGLETON_ID;
54 } // namespace thunk
55 } // namespace ppapi
57 #endif // PPAPI_THUNK_PPB_FLASH_FUNCTIONS_API_H_