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 CONTENT_PPAPI_PLUGIN_PPAPI_WEBKITPLATFORMSUPPORT_IMPL_H_
6 #define CONTENT_PPAPI_PLUGIN_PPAPI_WEBKITPLATFORMSUPPORT_IMPL_H_
8 #include "base/basictypes.h"
9 #include "base/memory/scoped_ptr.h"
10 #include "content/child/blink_platform_impl.h"
14 class PpapiWebKitPlatformSupportImpl
: public BlinkPlatformImpl
{
16 PpapiWebKitPlatformSupportImpl();
17 virtual ~PpapiWebKitPlatformSupportImpl();
19 // Shutdown must be called just prior to shutting down blink.
22 // WebKitPlatformSupport methods:
23 virtual blink::WebClipboard
* clipboard();
24 virtual blink::WebMimeRegistry
* mimeRegistry();
25 virtual blink::WebFileUtilities
* fileUtilities();
26 virtual blink::WebSandboxSupport
* sandboxSupport();
27 virtual bool sandboxEnabled();
28 virtual unsigned long long visitedLinkHash(const char* canonicalURL
,
30 virtual bool isLinkVisited(unsigned long long linkHash
);
31 virtual void createMessageChannel(blink::WebMessagePortChannel
** channel1
,
32 blink::WebMessagePortChannel
** channel2
);
33 virtual void setCookies(const blink::WebURL
& url
,
34 const blink::WebURL
& first_party_for_cookies
,
35 const blink::WebString
& value
);
36 virtual blink::WebString
cookies(
37 const blink::WebURL
& url
,
38 const blink::WebURL
& first_party_for_cookies
);
39 virtual blink::WebString
defaultLocale();
40 virtual blink::WebThemeEngine
* themeEngine();
41 virtual blink::WebURLLoader
* createURLLoader();
42 virtual blink::WebSocketStreamHandle
* createSocketStreamHandle();
43 virtual void getPluginList(bool refresh
, blink::WebPluginListBuilder
*);
44 virtual blink::WebData
loadResource(const char* name
);
45 virtual blink::WebStorageNamespace
* createLocalStorageNamespace();
46 virtual void dispatchStorageEvent(const blink::WebString
& key
,
47 const blink::WebString
& oldValue
, const blink::WebString
& newValue
,
48 const blink::WebString
& origin
, const blink::WebURL
& url
,
50 virtual int databaseDeleteFile(const blink::WebString
& vfs_file_name
,
55 scoped_ptr
<SandboxSupport
> sandbox_support_
;
57 DISALLOW_COPY_AND_ASSIGN(PpapiWebKitPlatformSupportImpl
);
60 } // namespace content
62 #endif // CONTENT_PPAPI_PLUGIN_PPAPI_WEBKITPLATFORMSUPPORT_IMPL_H_