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/common/content_export.h" 10 #include "ui/base/layout.h" 11 #include "webkit/child/webkitplatformsupport_child_impl.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 webkit_glue::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_ 41