Upstream version 5.34.104.0
[platform/framework/web/crosswalk.git] / src / content / child / webkitplatformsupport_impl.h
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.
4
5 #ifndef CONTENT_CHILD_WEBKITPLATFORMSUPPORT_IMPL_H_
6 #define CONTENT_CHILD_WEBKITPLATFORMSUPPORT_IMPL_H_
7
8 #include "base/compiler_specific.h"
9 #include "content/child/webkitplatformsupport_child_impl.h"
10 #include "content/common/content_export.h"
11 #include "ui/base/layout.h"
12
13 namespace content {
14
15 // This is a specialization of WebKitPlatformSupportImpl that implements the
16 // embedder functions in terms of ContentClient.
17 class CONTENT_EXPORT WebKitPlatformSupportImpl
18     : NON_EXPORTED_BASE(public WebKitPlatformSupportChildImpl) {
19  public:
20   typedef blink::WebGraphicsContext3D* (OffscreenContextFactory)();
21
22   WebKitPlatformSupportImpl();
23   virtual ~WebKitPlatformSupportImpl();
24
25   virtual base::string16 GetLocalizedString(int message_id) OVERRIDE;
26   virtual base::StringPiece GetDataResource(
27       int resource_id,
28       ui::ScaleFactor scale_factor) OVERRIDE;
29   virtual webkit_glue::ResourceLoaderBridge* CreateResourceLoader(
30       const webkit_glue::ResourceLoaderBridge::RequestInfo& request_info)
31       OVERRIDE;
32   virtual webkit_glue::WebSocketStreamHandleBridge* CreateWebSocketStreamBridge(
33       blink::WebSocketStreamHandle* handle,
34       webkit_glue::WebSocketStreamHandleDelegate* delegate) OVERRIDE;
35   virtual blink::WebSocketHandle* createWebSocketHandle() OVERRIDE;
36 };
37
38 }  // namespace content
39
40 #endif  // CONTENT_CHILD_WEBKITPLATFORMSUPPORT_IMPL_H_