Move webkit/plugins/ppapi to content/renderer/pepper.

I will change namespaces in a followup as this got very large. Also, I have a temporary dependency from content/common onto content/renderer for PluginModule that I only discovered at the end. I will remove that in a followup.

BUG=263054
[email protected]

Review URL: https://codereview.chromium.org/20165002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@213578 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/chrome/browser/component_updater/DEPS b/chrome/browser/component_updater/DEPS
index 37c1ed1..2c90430 100644
--- a/chrome/browser/component_updater/DEPS
+++ b/chrome/browser/component_updater/DEPS
@@ -1,3 +1,4 @@
 include_rules = [
+  "+ppapi/shared_impl/ppapi_permissions.h",
   "+third_party/widevine"
 ]
diff --git a/chrome/browser/component_updater/pepper_flash_component_installer.cc b/chrome/browser/component_updater/pepper_flash_component_installer.cc
index 0897fe64..d9ac58c 100644
--- a/chrome/browser/component_updater/pepper_flash_component_installer.cc
+++ b/chrome/browser/component_updater/pepper_flash_component_installer.cc
@@ -34,6 +34,7 @@
 #include "content/public/browser/plugin_service.h"
 #include "content/public/common/pepper_plugin_info.h"
 #include "ppapi/c/private/ppb_pdf.h"
+#include "ppapi/shared_impl/ppapi_permissions.h"
 #include "webkit/common/plugins/ppapi/ppapi_utils.h"
 #include "webkit/plugins/plugin_constants.h"
 
diff --git a/chrome/renderer/DEPS b/chrome/renderer/DEPS
index 12111d0..d437fb2 100644
--- a/chrome/renderer/DEPS
+++ b/chrome/renderer/DEPS
@@ -20,7 +20,6 @@
   "+webkit/renderer",
 
   # TODO(jam): eliminate all of these. http://crbug.com/263054
-  "!webkit/plugins/ppapi/ppapi_plugin_instance.h",
   "!webkit/plugins/plugin_constants.h",
 
   "+third_party/npapi/bindings",
diff --git a/chrome/renderer/pepper/pepper_flash_drm_renderer_host.cc b/chrome/renderer/pepper/pepper_flash_drm_renderer_host.cc
index 85662db..26b6ef4 100644
--- a/chrome/renderer/pepper/pepper_flash_drm_renderer_host.cc
+++ b/chrome/renderer/pepper/pepper_flash_drm_renderer_host.cc
@@ -5,6 +5,7 @@
 #include "chrome/renderer/pepper/pepper_flash_drm_renderer_host.h"
 
 #include "base/files/file_path.h"
+#include "content/public/renderer/ppapi_plugin_instance.h"
 #include "content/public/renderer/renderer_ppapi_host.h"
 #include "ppapi/c/pp_errors.h"
 #include "ppapi/host/dispatch_host_message.h"
@@ -12,7 +13,6 @@
 #include "ppapi/host/ppapi_host.h"
 #include "ppapi/proxy/ppapi_messages.h"
 #include "ppapi/proxy/ppb_file_ref_proxy.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance.h"
 
 namespace chrome {
 
diff --git a/chrome/renderer/pepper/pepper_flash_fullscreen_host.cc b/chrome/renderer/pepper/pepper_flash_fullscreen_host.cc
index a14423d7..edeb06b 100644
--- a/chrome/renderer/pepper/pepper_flash_fullscreen_host.cc
+++ b/chrome/renderer/pepper/pepper_flash_fullscreen_host.cc
@@ -4,13 +4,13 @@
 
 #include "chrome/renderer/pepper/pepper_flash_fullscreen_host.h"
 
+#include "content/public/renderer/ppapi_plugin_instance.h"
 #include "content/public/renderer/renderer_ppapi_host.h"
 #include "ppapi/c/pp_errors.h"
 #include "ppapi/host/dispatch_host_message.h"
 #include "ppapi/host/host_message_context.h"
 #include "ppapi/host/ppapi_host.h"
 #include "ppapi/proxy/ppapi_messages.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance.h"
 
 namespace chrome {
 
diff --git a/chrome/renderer/pepper/pepper_flash_renderer_host.cc b/chrome/renderer/pepper/pepper_flash_renderer_host.cc
index 8880fb2..37561ae7 100644
--- a/chrome/renderer/pepper/pepper_flash_renderer_host.cc
+++ b/chrome/renderer/pepper/pepper_flash_renderer_host.cc
@@ -7,6 +7,7 @@
 #include <vector>
 
 #include "chrome/renderer/pepper/ppb_pdf_impl.h"
+#include "content/public/renderer/ppapi_plugin_instance.h"
 #include "content/public/renderer/render_thread.h"
 #include "content/public/renderer/renderer_ppapi_host.h"
 #include "ipc/ipc_message_macros.h"
@@ -28,7 +29,6 @@
 #include "third_party/skia/include/core/SkTypeface.h"
 #include "ui/gfx/rect.h"
 #include "url/gurl.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance.h"
 
 using ppapi::thunk::EnterResourceNoLock;
 using ppapi::thunk::PPB_ImageData_API;
diff --git a/chrome/renderer/pepper/pepper_pdf_host.cc b/chrome/renderer/pepper/pepper_pdf_host.cc
index 8ae1c5e..debaf9c0 100644
--- a/chrome/renderer/pepper/pepper_pdf_host.cc
+++ b/chrome/renderer/pepper/pepper_pdf_host.cc
@@ -8,6 +8,7 @@
 #include "chrome/common/render_messages.h"
 #include "chrome/renderer/printing/print_web_view_helper.h"
 #include "content/public/common/referrer.h"
+#include "content/public/renderer/ppapi_plugin_instance.h"
 #include "content/public/renderer/render_thread.h"
 #include "content/public/renderer/render_view.h"
 #include "content/public/renderer/renderer_ppapi_host.h"
@@ -36,7 +37,6 @@
 #include "ui/gfx/image/image_skia.h"
 #include "ui/gfx/image/image_skia_rep.h"
 #include "ui/gfx/point.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance.h"
 
 using webkit::ppapi::PluginInstance;
 
diff --git a/chrome/renderer/pepper/pepper_shared_memory_message_filter.cc b/chrome/renderer/pepper/pepper_shared_memory_message_filter.cc
index 23f507b..a3af8ea 100644
--- a/chrome/renderer/pepper/pepper_shared_memory_message_filter.cc
+++ b/chrome/renderer/pepper/pepper_shared_memory_message_filter.cc
@@ -8,12 +8,12 @@
 #include "base/memory/shared_memory.h"
 #include "base/process_util.h"
 #include "content/public/common/content_client.h"
+#include "content/public/renderer/ppapi_plugin_instance.h"
 #include "content/public/renderer/render_thread.h"
 #include "content/public/renderer/renderer_ppapi_host.h"
 #include "ppapi/host/ppapi_host.h"
 #include "ppapi/proxy/ppapi_messages.h"
 #include "ppapi/shared_impl/var_tracker.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance.h"
 
 namespace chrome {
 
diff --git a/chrome/renderer/pepper/ppb_nacl_private_impl.cc b/chrome/renderer/pepper/ppb_nacl_private_impl.cc
index ecf653a8..7ffe277 100644
--- a/chrome/renderer/pepper/ppb_nacl_private_impl.cc
+++ b/chrome/renderer/pepper/ppb_nacl_private_impl.cc
@@ -18,6 +18,7 @@
 #include "content/public/common/content_client.h"
 #include "content/public/common/content_switches.h"
 #include "content/public/common/sandbox_init.h"
+#include "content/public/renderer/ppapi_plugin_instance.h"
 #include "content/public/renderer/renderer_ppapi_host.h"
 #include "content/public/renderer/render_thread.h"
 #include "content/public/renderer/render_view.h"
@@ -33,7 +34,6 @@
 #include "third_party/WebKit/public/web/WebFrame.h"
 #include "third_party/WebKit/public/web/WebPluginContainer.h"
 #include "third_party/WebKit/public/web/WebView.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance.h"
 
 namespace {
 
diff --git a/chrome/renderer/pepper/ppb_pdf_impl.cc b/chrome/renderer/pepper/ppb_pdf_impl.cc
index 65e9be1..0ac88b200e 100644
--- a/chrome/renderer/pepper/ppb_pdf_impl.cc
+++ b/chrome/renderer/pepper/ppb_pdf_impl.cc
@@ -14,6 +14,7 @@
 #include "chrome/renderer/printing/print_web_view_helper.h"
 #include "content/public/common/child_process_sandbox_support_linux.h"
 #include "content/public/common/referrer.h"
+#include "content/public/renderer/ppapi_plugin_instance.h"
 #include "content/public/renderer/render_thread.h"
 #include "content/public/renderer/render_view.h"
 #include "grit/webkit_resources.h"
@@ -35,7 +36,6 @@
 #include "ui/base/l10n/l10n_util.h"
 #include "ui/base/layout.h"
 #include "ui/base/resource/resource_bundle.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance.h"
 
 using ppapi::PpapiGlobals;
 using webkit::ppapi::PluginInstance;
diff --git a/content/common/DEPS b/content/common/DEPS
index 2e11e26..d60a74e 100644
--- a/content/common/DEPS
+++ b/content/common/DEPS
@@ -6,6 +6,9 @@
   "-webkit/child",
   "-webkit/renderer",
 
+  # TODO(jam): remove this
+  "+content/renderer/pepper/plugin_module.h",
+
   # TODO(ananta|jamesr|scottmg) http://crbug.com/237249
   "!webkit/child/websocketstreamhandle_impl.h",
 
diff --git a/content/common/pepper_plugin_registry.cc b/content/common/pepper_plugin_registry.cc
index 44bc6a08..041c50d1 100644
--- a/content/common/pepper_plugin_registry.cc
+++ b/content/common/pepper_plugin_registry.cc
@@ -184,7 +184,7 @@
       return;
     }
   }
-  NOTREACHED();  // Should have always found the module above.
+  // Can occur in tests.
 }
 
 PepperPluginRegistry::~PepperPluginRegistry() {
@@ -209,7 +209,7 @@
       continue;  // Out of process plugins need no special pre-initialization.
 
     scoped_refptr<webkit::ppapi::PluginModule> module =
-        new webkit::ppapi::PluginModule(current.name, current.path, this,
+        new webkit::ppapi::PluginModule(current.name, current.path,
             ppapi::PpapiPermissions(current.permissions));
     AddLiveModule(current.path, module.get());
     if (current.is_internal) {
diff --git a/content/common/pepper_plugin_registry.h b/content/common/pepper_plugin_registry.h
index b40f00b..6a94725 100644
--- a/content/common/pepper_plugin_registry.h
+++ b/content/common/pepper_plugin_registry.h
@@ -9,7 +9,9 @@
 #include <map>
 
 #include "content/public/common/pepper_plugin_info.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
+
+// TODO(jam): refactor
+#include "content/renderer/pepper/plugin_module.h"
 
 namespace content {
 
@@ -24,8 +26,7 @@
 // It keeps two lists. One list of preloaded in-process modules, and one list
 // is a list of all live modules (some of which may be out-of-process and hence
 // not preloaded).
-class PepperPluginRegistry
-    : public webkit::ppapi::PluginDelegate::ModuleLifetime {
+class PepperPluginRegistry {
  public:
   ~PepperPluginRegistry();
 
@@ -64,9 +65,7 @@
   void AddLiveModule(const base::FilePath& path,
                      webkit::ppapi::PluginModule* module);
 
-  // ModuleLifetime implementation.
-  virtual void PluginModuleDead(
-      webkit::ppapi::PluginModule* dead_module) OVERRIDE;
+  void PluginModuleDead(webkit::ppapi::PluginModule* dead_module);
 
  private:
   PepperPluginRegistry();
diff --git a/content/content_renderer.gypi b/content/content_renderer.gypi
index 01a70488..e260a50 100644
--- a/content/content_renderer.gypi
+++ b/content/content_renderer.gypi
@@ -46,6 +46,7 @@
     'public/renderer/navigation_state.cc',
     'public/renderer/navigation_state.h',
     'public/renderer/password_form_conversion_utils.h',
+    'public/renderer/ppapi_plugin_instance.h',
     'public/renderer/renderer_ppapi_host.h',
     'public/renderer/render_frame.h',
     'public/renderer/render_process_observer.cc',
@@ -258,8 +259,29 @@
     'renderer/paint_aggregator.cc',
     'renderer/paint_aggregator.h',
     'renderer/password_form_conversion_utils.cc',
+    'renderer/pepper/audio_helper.cc',
+    'renderer/pepper/audio_helper.h',
+    'renderer/pepper/common.h',
+    'renderer/pepper/content_decryptor_delegate.cc',
+    'renderer/pepper/content_decryptor_delegate.h',
     'renderer/pepper/content_renderer_pepper_host_factory.cc',
     'renderer/pepper/content_renderer_pepper_host_factory.h',
+    'renderer/pepper/event_conversion.cc',
+    'renderer/pepper/event_conversion.h',
+    'renderer/pepper/fullscreen_container.h',
+    'renderer/pepper/gfx_conversion.h',
+    'renderer/pepper/host_array_buffer_var.cc',
+    'renderer/pepper/host_array_buffer_var.h',
+    'renderer/pepper/host_globals.cc',
+    'renderer/pepper/host_globals.h',
+    'renderer/pepper/host_var_tracker.cc',
+    'renderer/pepper/host_var_tracker.h',
+    'renderer/pepper/message_channel.cc',
+    'renderer/pepper/message_channel.h',
+    'renderer/pepper/npapi_glue.cc',
+    'renderer/pepper/npapi_glue.h',
+    'renderer/pepper/npobject_var.cc',
+    'renderer/pepper/npobject_var.h',
     'renderer/pepper/pepper_audio_input_host.cc',
     'renderer/pepper/pepper_audio_input_host.h',
     'renderer/pepper/pepper_broker_impl.cc',
@@ -311,10 +333,72 @@
     'renderer/pepper/pepper_video_capture_host.h',
     'renderer/pepper/pepper_websocket_host.cc',
     'renderer/pepper/pepper_websocket_host.h',
+    'renderer/pepper/plugin_delegate.h',
+    'renderer/pepper/plugin_module.cc',
+    'renderer/pepper/plugin_module.h',
+    'renderer/pepper/plugin_object.cc',
+    'renderer/pepper/plugin_object.h',
+    'renderer/pepper/ppapi_interface_factory.cc',
+    'renderer/pepper/ppapi_interface_factory.h',
+    'renderer/pepper/ppapi_plugin_instance_impl.cc',
+    'renderer/pepper/ppapi_plugin_instance_impl.h',
+    'renderer/pepper/ppapi_webplugin_impl.cc',
+    'renderer/pepper/ppapi_webplugin_impl.h',
+    'renderer/pepper/ppb_audio_impl.cc',
+    'renderer/pepper/ppb_audio_impl.h',
+    'renderer/pepper/ppb_broker_impl.cc',
+    'renderer/pepper/ppb_broker_impl.h',
+    'renderer/pepper/ppb_buffer_impl.cc',
+    'renderer/pepper/ppb_buffer_impl.h',
+    'renderer/pepper/ppb_file_ref_impl.cc',
+    'renderer/pepper/ppb_file_ref_impl.h',
+    'renderer/pepper/ppb_flash_message_loop_impl.cc',
+    'renderer/pepper/ppb_flash_message_loop_impl.h',
+    'renderer/pepper/ppb_gpu_blacklist_private_impl.cc',
+    'renderer/pepper/ppb_gpu_blacklist_private_impl.h',
+    'renderer/pepper/ppb_graphics_3d_impl.cc',
+    'renderer/pepper/ppb_graphics_3d_impl.h',
+    'renderer/pepper/ppb_image_data_impl.cc',
+    'renderer/pepper/ppb_image_data_impl.h',
+    'renderer/pepper/ppb_network_monitor_private_impl.cc',
+    'renderer/pepper/ppb_network_monitor_private_impl.h',
+    'renderer/pepper/ppb_proxy_impl.cc',
+    'renderer/pepper/ppb_proxy_impl.h',
+    'renderer/pepper/ppb_scrollbar_impl.cc',
+    'renderer/pepper/ppb_scrollbar_impl.h',
+    'renderer/pepper/ppb_tcp_server_socket_private_impl.cc',
+    'renderer/pepper/ppb_tcp_server_socket_private_impl.h',
+    'renderer/pepper/ppb_tcp_socket_private_impl.cc',
+    'renderer/pepper/ppb_tcp_socket_private_impl.h',
+    'renderer/pepper/ppb_uma_private_impl.cc',
+    'renderer/pepper/ppb_uma_private_impl.h',
+    'renderer/pepper/ppb_var_deprecated_impl.cc',
+    'renderer/pepper/ppb_var_deprecated_impl.h',
+    'renderer/pepper/ppb_video_decoder_impl.cc',
+    'renderer/pepper/ppb_video_decoder_impl.h',
+    'renderer/pepper/ppb_widget_impl.cc',
+    'renderer/pepper/ppb_widget_impl.h',
+    'renderer/pepper/ppb_x509_certificate_private_impl.cc',
+    'renderer/pepper/ppb_x509_certificate_private_impl.h',
+    'renderer/pepper/quota_file_io.cc',
+    'renderer/pepper/quota_file_io.h',
     'renderer/pepper/renderer_ppapi_host_impl.cc',
     'renderer/pepper/renderer_ppapi_host_impl.h',
+    'renderer/pepper/resource_creation_impl.cc',
+    'renderer/pepper/resource_creation_impl.h',
+    'renderer/pepper/resource_helper.cc',
+    'renderer/pepper/resource_helper.h',
+    'renderer/pepper/url_request_info_util.cc',
+    'renderer/pepper/url_request_info_util.h',
     'renderer/pepper/url_response_info_util.cc',
     'renderer/pepper/url_response_info_util.h',
+    'renderer/pepper/usb_key_code_conversion.h',
+    'renderer/pepper/usb_key_code_conversion.cc',
+    'renderer/pepper/usb_key_code_conversion_linux.cc',
+    'renderer/pepper/usb_key_code_conversion_mac.cc',
+    'renderer/pepper/usb_key_code_conversion_win.cc',
+    'renderer/pepper/v8_var_converter.cc',
+    'renderer/pepper/v8_var_converter.h',
     'renderer/plugin_channel_host.cc',
     'renderer/plugin_channel_host.h',
     'renderer/browser_plugin/browser_plugin.cc',
@@ -601,6 +685,13 @@
         'renderer/media/crypto/ppapi_decryptor.h',
       ],
     }],
+    ['enable_gpu!=1', {
+      'sources!': [
+        'renderer/pepper/ppb_graphics_3d_impl.cc',
+        'renderer/pepper/ppb_graphics_3d_impl.h',
+        'renderer/pepper/ppb_open_gl_es_impl.cc',
+      ],
+    }],
   ],
   'target_conditions': [
     ['OS=="android"', {
diff --git a/content/content_tests.gypi b/content/content_tests.gypi
index 9e2564d..6f1c0efe 100644
--- a/content/content_tests.gypi
+++ b/content/content_tests.gypi
@@ -430,10 +430,21 @@
         'renderer/media/video_capture_message_filter_unittest.cc',
         'renderer/media/webaudiosourceprovider_impl_unittest.cc',
         'renderer/paint_aggregator_unittest.cc',
-        'renderer/skia_benchmarking_extension_unittest.cc',
+        'renderer/pepper/host_var_tracker_unittest.cc',
+        'renderer/pepper/mock_platform_image_2d.cc',
+        'renderer/pepper/mock_platform_image_2d.h',
+        'renderer/pepper/mock_plugin_delegate.cc',
+        'renderer/pepper/mock_plugin_delegate.h',
+        'renderer/pepper/mock_resource.h',
+        'renderer/pepper/ppapi_plugin_instance_unittest.cc',
+        'renderer/pepper/ppapi_unittest.cc',
+        'renderer/pepper/ppapi_unittest.h',
+        'renderer/pepper/quota_file_io_unittest.cc',
+        'renderer/pepper/v8_var_converter_unittest.cc',
         'renderer/pepper/pepper_broker_impl_unittest.cc',
         'renderer/render_thread_impl_unittest.cc',
         'renderer/render_view_impl_unittest.cc',
+        'renderer/skia_benchmarking_extension_unittest.cc',
         'renderer/v8_value_converter_impl_unittest.cc',
         'renderer/webplugin_impl_unittest.cc',
         'test/image_decoder_test.cc',
@@ -531,17 +542,6 @@
         '../webkit/mocks/mock_weburlloader.cc',
         '../webkit/mocks/mock_weburlloader.h',
         '../webkit/common/user_agent/user_agent_unittest.cc',
-        '../webkit/plugins/ppapi/host_var_tracker_unittest.cc',
-        '../webkit/plugins/ppapi/mock_platform_image_2d.cc',
-        '../webkit/plugins/ppapi/mock_platform_image_2d.h',
-        '../webkit/plugins/ppapi/mock_plugin_delegate.cc',
-        '../webkit/plugins/ppapi/mock_plugin_delegate.h',
-        '../webkit/plugins/ppapi/mock_resource.h',
-        '../webkit/plugins/ppapi/ppapi_plugin_instance_unittest.cc',
-        '../webkit/plugins/ppapi/ppapi_unittest.cc',
-        '../webkit/plugins/ppapi/ppapi_unittest.h',
-        '../webkit/plugins/ppapi/quota_file_io_unittest.cc',
-        '../webkit/plugins/ppapi/v8_var_converter_unittest.cc',
         '../webkit/browser/quota/mock_quota_manager.cc',
         '../webkit/browser/quota/mock_quota_manager.h',
         '../webkit/browser/quota/mock_quota_manager_unittest.cc',
@@ -848,6 +848,10 @@
             'renderer/dom_serializer_browsertest.cc',
             'renderer/mouse_lock_dispatcher_browsertest.cc',
             'renderer/password_form_conversion_utils_browsertest.cc',
+            'renderer/pepper/mock_platform_image_2d.cc',
+            'renderer/pepper/mock_platform_image_2d.h',
+            'renderer/pepper/mock_plugin_delegate.cc',
+            'renderer/pepper/mock_plugin_delegate.h',
             'renderer/pepper/mock_renderer_ppapi_host.cc',
             'renderer/pepper/pepper_device_enumeration_host_helper_unittest.cc',
             'renderer/pepper/pepper_file_chooser_host_unittest.cc',
@@ -868,10 +872,6 @@
             'test/content_browser_test_utils_mac.mm',
             'test/content_browser_test_test.cc',
             'test/content_test_launcher.cc',
-            '../webkit/plugins/ppapi/mock_platform_image_2d.cc',
-            '../webkit/plugins/ppapi/mock_platform_image_2d.h',
-            '../webkit/plugins/ppapi/mock_plugin_delegate.cc',
-            '../webkit/plugins/ppapi/mock_plugin_delegate.h',
             '../webkit/renderer/cpp_binding_example.cc',
             '../webkit/renderer/cpp_binding_example.h',
           ],
@@ -969,12 +969,12 @@
               ],
             }],
             ['enable_plugins==0', {
+              'sources/': [
+                ['exclude', '^renderer/pepper/'],
+              ],
               'sources!': [
                 'browser/plugin_service_impl_browsertest.cc',
                 'browser/plugin_data_remover_impl_browsertest.cc',
-                'renderer/pepper/pepper_device_enumeration_host_helper_unittest.cc',
-                'renderer/pepper/pepper_file_chooser_host_unittest.cc',
-                'renderer/pepper/pepper_graphics_2d_host_unittest.cc',
               ],
             }],
             ['enable_pepper_cdms==1', {
diff --git a/content/ppapi_plugin/ppapi_thread.h b/content/ppapi_plugin/ppapi_thread.h
index 9fb56c1..7726a98 100644
--- a/content/ppapi_plugin/ppapi_thread.h
+++ b/content/ppapi_plugin/ppapi_thread.h
@@ -15,13 +15,13 @@
 #include "base/scoped_native_library.h"
 #include "build/build_config.h"
 #include "content/child/child_thread.h"
+#include "content/public/common/pepper_plugin_info.h"
 #include "ipc/ipc_listener.h"
 #include "ppapi/c/pp_module.h"
 #include "ppapi/c/trusted/ppp_broker.h"
 #include "ppapi/proxy/plugin_dispatcher.h"
 #include "ppapi/proxy/plugin_globals.h"
 #include "ppapi/proxy/plugin_proxy_delegate.h"
-#include "webkit/plugins/ppapi/plugin_module.h"
 
 #if defined(OS_WIN)
 #include "base/win/scoped_handle.h"
@@ -138,7 +138,7 @@
   ppapi::proxy::PluginGlobals plugin_globals_;
 
   // Storage for plugin entry points.
-  webkit::ppapi::PluginModule::EntryPoints plugin_entry_points_;
+  PepperPluginInfo::EntryPoints plugin_entry_points_;
 
   // Callback to call when a new instance connects to the broker.
   // Used only when is_broker_.
diff --git a/content/public/common/pepper_plugin_info.cc b/content/public/common/pepper_plugin_info.cc
index f8e88b2..21ef4e8 100644
--- a/content/public/common/pepper_plugin_info.cc
+++ b/content/public/common/pepper_plugin_info.cc
@@ -8,6 +8,12 @@
 
 namespace content {
 
+PepperPluginInfo::EntryPoints::EntryPoints()
+    : get_interface(NULL),
+      initialize_module(NULL),
+      shutdown_module(NULL) {
+}
+
 PepperPluginInfo::PepperPluginInfo()
     : is_internal(false),
       is_out_of_process(false),
diff --git a/content/public/common/pepper_plugin_info.h b/content/public/common/pepper_plugin_info.h
index 8106c6e..3cd54bc 100644
--- a/content/public/common/pepper_plugin_info.h
+++ b/content/public/common/pepper_plugin_info.h
@@ -11,11 +11,25 @@
 #include "base/files/file_path.h"
 #include "content/common/content_export.h"
 #include "content/public/common/webplugininfo.h"
-#include "webkit/plugins/ppapi/plugin_module.h"
+#include "ppapi/c/pp_module.h"
+#include "ppapi/c/ppb.h"
 
 namespace content {
 
 struct CONTENT_EXPORT PepperPluginInfo {
+  typedef const void* (*GetInterfaceFunc)(const char*);
+  typedef int (*PPP_InitializeModuleFunc)(PP_Module, PPB_GetInterface);
+  typedef void (*PPP_ShutdownModuleFunc)();
+
+  struct EntryPoints {
+    // This structure is POD, with the constructor initializing to NULL.
+    CONTENT_EXPORT EntryPoints();
+
+    GetInterfaceFunc get_interface;
+    PPP_InitializeModuleFunc initialize_module;
+    PPP_ShutdownModuleFunc shutdown_module;  // Optional, may be NULL.
+  };
+
   PepperPluginInfo();
   ~PepperPluginInfo();
 
@@ -42,7 +56,7 @@
 
   // When is_internal is set, this contains the function pointers to the
   // entry points for the internal plugins.
-  webkit::ppapi::PluginModule::EntryPoints internal_entry_points;
+  EntryPoints internal_entry_points;
 
   // Permission bits from ppapi::Permission.
   uint32 permissions;
diff --git a/webkit/plugins/ppapi/ppapi_plugin_instance.h b/content/public/renderer/ppapi_plugin_instance.h
similarity index 89%
rename from webkit/plugins/ppapi/ppapi_plugin_instance.h
rename to content/public/renderer/ppapi_plugin_instance.h
index 1162c34..1e56e4c 100644
--- a/webkit/plugins/ppapi/ppapi_plugin_instance.h
+++ b/content/public/renderer/ppapi_plugin_instance.h
@@ -2,14 +2,14 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_PPAPI_PLUGIN_INSTANCE_H_
-#define WEBKIT_PLUGINS_PPAPI_PPAPI_PLUGIN_INSTANCE_H_
+#ifndef CONTENT_PUBLIC_PPAPI_PLUGIN_INSTANCE_H_
+#define CONTENT_PUBLIC_PPAPI_PLUGIN_INSTANCE_H_
 
 #include "base/basictypes.h"
 #include "base/process/process_handle.h"
+#include "content/common/content_export.h"
 #include "ppapi/c/pp_resource.h"
 #include "ppapi/c/private/ppb_instance_private.h"
-#include "webkit/plugins/webkit_plugins_export.h"
 
 class GURL;
 
@@ -45,7 +45,7 @@
 
 class PluginInstance {
  public:
-  static WEBKIT_PLUGINS_EXPORT PluginInstance* Get(PP_Instance instance_id);
+  static CONTENT_EXPORT PluginInstance* Get(PP_Instance instance_id);
 
   virtual ~PluginInstance() {}
 
@@ -102,4 +102,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_PPAPI_PLUGIN_INSTANCE_H_
+#endif  // CONTENT_PUBLIC_PPAPI_PLUGIN_INSTANCE_H_
diff --git a/content/public/renderer/renderer_ppapi_host.h b/content/public/renderer/renderer_ppapi_host.h
index 5b33f7b..5f3caac 100644
--- a/content/public/renderer/renderer_ppapi_host.h
+++ b/content/public/renderer/renderer_ppapi_host.h
@@ -5,13 +5,13 @@
 #ifndef CONTENT_PUBLIC_RENDERER_RENDERER_PPAPI_HOST_H_
 #define CONTENT_PUBLIC_RENDERER_RENDERER_PPAPI_HOST_H_
 
+#include "base/callback_forward.h"
 #include "base/memory/ref_counted.h"
 #include "base/platform_file.h"
 #include "base/process.h"
 #include "content/common/content_export.h"
 #include "ipc/ipc_platform_file.h"
 #include "ppapi/c/pp_instance.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
 
 namespace base {
 class FilePath;
@@ -38,7 +38,6 @@
 namespace webkit {
 namespace ppapi {
 class PluginInstance;
-class PluginModule;
 }
 }
 
diff --git a/content/renderer/media/crypto/content_decryption_module_factory.cc b/content/renderer/media/crypto/content_decryption_module_factory.cc
index 71949fc1..3138be2 100644
--- a/content/renderer/media/crypto/content_decryption_module_factory.cc
+++ b/content/renderer/media/crypto/content_decryption_module_factory.cc
@@ -10,11 +10,11 @@
 
 #if defined(ENABLE_PEPPER_CDMS)
 #include "content/renderer/media/crypto/ppapi_decryptor.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
+#include "content/renderer/pepper/ppapi_webplugin_impl.h"
 #include "third_party/WebKit/public/platform/WebString.h"
 #include "third_party/WebKit/public/web/WebFrame.h"
 #include "third_party/WebKit/public/web/WebMediaPlayerClient.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
-#include "webkit/plugins/ppapi/ppapi_webplugin_impl.h"
 #elif defined(OS_ANDROID)
 #include "content/renderer/media/android/proxy_media_keys.h"
 #include "content/renderer/media/android/webmediaplayer_proxy_android.h"
diff --git a/content/renderer/media/crypto/ppapi_decryptor.cc b/content/renderer/media/crypto/ppapi_decryptor.cc
index 33f30c9..7bf2aab8 100644
--- a/content/renderer/media/crypto/ppapi_decryptor.cc
+++ b/content/renderer/media/crypto/ppapi_decryptor.cc
@@ -12,13 +12,13 @@
 #include "base/logging.h"
 #include "base/message_loop/message_loop.h"
 #include "base/message_loop/message_loop_proxy.h"
+#include "content/renderer/pepper/content_decryptor_delegate.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
 #include "media/base/audio_decoder_config.h"
 #include "media/base/data_buffer.h"
 #include "media/base/decoder_buffer.h"
 #include "media/base/video_decoder_config.h"
 #include "media/base/video_frame.h"
-#include "webkit/plugins/ppapi/content_decryptor_delegate.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
 
 namespace content {
 
diff --git a/content/renderer/media/pepper_platform_video_decoder_impl.h b/content/renderer/media/pepper_platform_video_decoder_impl.h
index 686974ba..d3fc9a91d 100644
--- a/content/renderer/media/pepper_platform_video_decoder_impl.h
+++ b/content/renderer/media/pepper_platform_video_decoder_impl.h
@@ -10,8 +10,8 @@
 #include "base/compiler_specific.h"
 #include "base/memory/ref_counted.h"
 #include "base/message_loop/message_loop.h"
+#include "content/renderer/pepper/plugin_delegate.h"
 #include "media/video/video_decode_accelerator.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
 
 namespace content {
 
diff --git a/content/renderer/media/video_destination_handler.cc b/content/renderer/media/video_destination_handler.cc
index 6745acc0..39e6a39 100644
--- a/content/renderer/media/video_destination_handler.cc
+++ b/content/renderer/media/video_destination_handler.cc
@@ -11,10 +11,10 @@
 #include "base/rand_util.h"
 #include "content/renderer/media/media_stream_dependency_factory.h"
 #include "content/renderer/media/media_stream_registry_interface.h"
+#include "content/renderer/pepper/ppb_image_data_impl.h"
 #include "content/renderer/render_thread_impl.h"
 #include "third_party/WebKit/public/platform/WebMediaStreamTrack.h"
 #include "third_party/WebKit/public/web/WebMediaStreamRegistry.h"
-#include "webkit/plugins/ppapi/ppb_image_data_impl.h"
 
 using cricket::CaptureState;
 using cricket::VideoFormat;
@@ -85,6 +85,7 @@
 
 void PpFrameWriter::PutFrame(PPB_ImageData_Impl* image_data,
                              int64 time_stamp_ns) {
+#if defined(ENABLE_PLUGINS)
   base::AutoLock auto_lock(lock_);
   // This assumes the handler of the SignalFrameCaptured won't call Start/Stop.
   // TODO(ronghuawu): Avoid the using of lock. One way is to post this call to
@@ -132,6 +133,7 @@
   // This signals to libJingle that a new VideoFrame is available.
   // libJingle have no assumptions on what thread this signal come from.
   SignalFrameCaptured(this, &frame);
+#endif
 }
 
 // PpFrameWriterProxy is a helper class to make sure the user won't use
diff --git a/content/renderer/media/webmediaplayer_impl.cc b/content/renderer/media/webmediaplayer_impl.cc
index bffda93..dac94c6 100644
--- a/content/renderer/media/webmediaplayer_impl.cc
+++ b/content/renderer/media/webmediaplayer_impl.cc
@@ -28,6 +28,7 @@
 #include "content/renderer/media/webmediaplayer_params.h"
 #include "content/renderer/media/webmediaplayer_util.h"
 #include "content/renderer/media/webmediasourceclient_impl.h"
+#include "content/renderer/pepper/ppapi_webplugin_impl.h"
 #include "gpu/GLES2/gl2extchromium.h"
 #include "media/audio/null_audio_sink.h"
 #include "media/base/bind_to_loop.h"
@@ -55,7 +56,6 @@
 #include "third_party/WebKit/public/web/WebRuntimeFeatures.h"
 #include "third_party/WebKit/public/web/WebView.h"
 #include "v8/include/v8.h"
-#include "webkit/plugins/ppapi/ppapi_webplugin_impl.h"
 #include "webkit/renderer/compositor_bindings/web_layer_impl.h"
 
 using WebKit::WebCanvas;
diff --git a/webkit/plugins/ppapi/DEPS b/content/renderer/pepper/DEPS
similarity index 100%
rename from webkit/plugins/ppapi/DEPS
rename to content/renderer/pepper/DEPS
diff --git a/content/renderer/pepper/OWNERS b/content/renderer/pepper/OWNERS
index dc19a03..c5db5bd 100644
--- a/content/renderer/pepper/OWNERS
+++ b/content/renderer/pepper/OWNERS
@@ -1,3 +1,6 @@
 [email protected]
 [email protected]
 [email protected]
+
+per-file usb_key_code_*[email protected]
+per-file usb_key_code_*[email protected]
diff --git a/webkit/plugins/ppapi/audio_helper.cc b/content/renderer/pepper/audio_helper.cc
similarity index 94%
rename from webkit/plugins/ppapi/audio_helper.cc
rename to content/renderer/pepper/audio_helper.cc
index c2357f3..7eb0d87 100644
--- a/webkit/plugins/ppapi/audio_helper.cc
+++ b/content/renderer/pepper/audio_helper.cc
@@ -2,10 +2,11 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
+#include "content/renderer/pepper/audio_helper.h"
+
+#include "content/renderer/pepper/common.h"
+#include "content/renderer/pepper/resource_helper.h"
 #include "ppapi/c/pp_completion_callback.h"
-#include "webkit/plugins/ppapi/audio_helper.h"
-#include "webkit/plugins/ppapi/common.h"
-#include "webkit/plugins/ppapi/resource_helper.h"
 
 using ppapi::TrackedCallback;
 
diff --git a/webkit/plugins/ppapi/audio_helper.h b/content/renderer/pepper/audio_helper.h
similarity index 91%
rename from webkit/plugins/ppapi/audio_helper.h
rename to content/renderer/pepper/audio_helper.h
index c4dfeaa..854ac9a 100644
--- a/webkit/plugins/ppapi/audio_helper.h
+++ b/content/renderer/pepper/audio_helper.h
@@ -2,18 +2,18 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_AUDIO_HELPER_H_
-#define WEBKIT_PLUGINS_PPAPI_AUDIO_HELPER_H_
+#ifndef CONTENT_RENDERER_PEPPER_AUDIO_HELPER_H_
+#define CONTENT_RENDERER_PEPPER_AUDIO_HELPER_H_
 
 #include "base/basictypes.h"
 #include "base/memory/scoped_ptr.h"
 #include "base/memory/shared_memory.h"
 #include "base/sync_socket.h"
+#include "content/renderer/pepper/plugin_delegate.h"
 #include "ppapi/c/pp_completion_callback.h"
 #include "ppapi/shared_impl/resource.h"
 #include "ppapi/shared_impl/scoped_pp_resource.h"
 #include "ppapi/shared_impl/tracked_callback.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
 
 namespace webkit {
 namespace ppapi {
@@ -60,4 +60,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_AUDIO_HELPER_H_
+#endif  // CONTENT_RENDERER_PEPPER_AUDIO_HELPER_H_
diff --git a/webkit/plugins/ppapi/common.h b/content/renderer/pepper/common.h
similarity index 78%
rename from webkit/plugins/ppapi/common.h
rename to content/renderer/pepper/common.h
index 542bad9..ed51b62 100644
--- a/webkit/plugins/ppapi/common.h
+++ b/content/renderer/pepper/common.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_COMMON_H_
-#define WEBKIT_PLUGINS_PPAPI_COMMON_H_
+#ifndef CONTENT_RENDERER_PEPPER_COMMON_H_
+#define CONTENT_RENDERER_PEPPER_COMMON_H_
 
 #include "ppapi/c/pp_bool.h"
 #include "ppapi/c/pp_var.h"
@@ -22,5 +22,5 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_COMMON_H_
+#endif  // CONTENT_RENDERER_PEPPER_COMMON_H_
 
diff --git a/webkit/plugins/ppapi/content_decryptor_delegate.cc b/content/renderer/pepper/content_decryptor_delegate.cc
similarity index 99%
rename from webkit/plugins/ppapi/content_decryptor_delegate.cc
rename to content/renderer/pepper/content_decryptor_delegate.cc
index 61d85c5..79d9cff 100644
--- a/webkit/plugins/ppapi/content_decryptor_delegate.cc
+++ b/content/renderer/pepper/content_decryptor_delegate.cc
@@ -2,12 +2,13 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/content_decryptor_delegate.h"
+#include "content/renderer/pepper/content_decryptor_delegate.h"
 
 #include "base/callback_helpers.h"
 #include "base/debug/trace_event.h"
 #include "base/message_loop/message_loop_proxy.h"
 #include "base/safe_numerics.h"
+#include "content/renderer/pepper/ppb_buffer_impl.h"
 #include "media/base/audio_buffer.h"
 #include "media/base/audio_decoder_config.h"
 #include "media/base/bind_to_loop.h"
@@ -24,7 +25,6 @@
 #include "ppapi/thunk/enter.h"
 #include "ppapi/thunk/ppb_buffer_api.h"
 #include "ui/gfx/rect.h"
-#include "webkit/plugins/ppapi/ppb_buffer_impl.h"
 
 using ppapi::ArrayBufferVar;
 using ppapi::PpapiGlobals;
@@ -241,6 +241,9 @@
       audio_bytes_per_frame_(0) {
 }
 
+ContentDecryptorDelegate::~ContentDecryptorDelegate() {
+}
+
 void ContentDecryptorDelegate::Initialize(const std::string& key_system) {
   // TODO(ddorwin): Add an Initialize method to PPP_ContentDecryptor_Private.
   DCHECK(!key_system.empty());
diff --git a/webkit/plugins/ppapi/content_decryptor_delegate.h b/content/renderer/pepper/content_decryptor_delegate.h
similarity index 95%
rename from webkit/plugins/ppapi/content_decryptor_delegate.h
rename to content/renderer/pepper/content_decryptor_delegate.h
index 26b306b..8f7ad31 100644
--- a/webkit/plugins/ppapi/content_decryptor_delegate.h
+++ b/content/renderer/pepper/content_decryptor_delegate.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_CONTENT_DECRYPTOR_DELEGATE_H_
-#define WEBKIT_PLUGINS_PPAPI_CONTENT_DECRYPTOR_DELEGATE_H_
+#ifndef CONTENT_RENDERER_PEPPER_CONTENT_DECRYPTOR_DELEGATE_H_
+#define CONTENT_RENDERER_PEPPER_CONTENT_DECRYPTOR_DELEGATE_H_
 
 #include <queue>
 #include <string>
@@ -18,7 +18,6 @@
 #include "ppapi/c/private/pp_content_decryptor.h"
 #include "ppapi/c/private/ppp_content_decryptor_private.h"
 #include "ui/gfx/size.h"
-#include "webkit/plugins/webkit_plugins_export.h"
 
 namespace media {
 class AudioDecoderConfig;
@@ -31,7 +30,7 @@
 
 class PPB_Buffer_Impl;
 
-class WEBKIT_PLUGINS_EXPORT ContentDecryptorDelegate {
+class ContentDecryptorDelegate {
  public:
   // ContentDecryptorDelegate does not take ownership of
   // |plugin_decryption_interface|. Therefore |plugin_decryption_interface|
@@ -39,6 +38,7 @@
   ContentDecryptorDelegate(
       PP_Instance pp_instance,
       const PPP_ContentDecryptor_Private* plugin_decryption_interface);
+  ~ContentDecryptorDelegate();
 
   void Initialize(const std::string& key_system);
 
@@ -192,4 +192,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_CONTENT_DECRYPTOR_DELEGATE_H_
+#endif  // CONTENT_RENDERER_PEPPER_CONTENT_DECRYPTOR_DELEGATE_H_
diff --git a/webkit/plugins/ppapi/event_conversion.cc b/content/renderer/pepper/event_conversion.cc
similarity index 98%
rename from webkit/plugins/ppapi/event_conversion.cc
rename to content/renderer/pepper/event_conversion.cc
index 9c40afd..f912ae56f 100644
--- a/webkit/plugins/ppapi/event_conversion.cc
+++ b/content/renderer/pepper/event_conversion.cc
@@ -2,9 +2,9 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include <map>
+#include "content/renderer/pepper/event_conversion.h"
 
-#include "webkit/plugins/ppapi/event_conversion.h"
+#include <map>
 
 #include "base/basictypes.h"
 #include "base/i18n/char_iterator.h"
@@ -14,14 +14,14 @@
 #include "base/strings/stringprintf.h"
 #include "base/strings/utf_string_conversion_utils.h"
 #include "base/strings/utf_string_conversions.h"
+#include "content/renderer/pepper/common.h"
+#include "content/renderer/pepper/usb_key_code_conversion.h"
 #include "ppapi/c/pp_input_event.h"
 #include "ppapi/shared_impl/ppb_input_event_shared.h"
 #include "ppapi/shared_impl/time_conversion.h"
 #include "third_party/WebKit/public/platform/WebGamepads.h"
 #include "third_party/WebKit/public/platform/WebString.h"
 #include "third_party/WebKit/public/web/WebInputEvent.h"
-#include "webkit/plugins/ppapi/common.h"
-#include "webkit/plugins/ppapi/usb_key_code_conversion.h"
 
 using ppapi::EventTimeToPPTimeTicks;
 using ppapi::InputEventData;
diff --git a/webkit/plugins/ppapi/event_conversion.h b/content/renderer/pepper/event_conversion.h
similarity index 85%
rename from webkit/plugins/ppapi/event_conversion.h
rename to content/renderer/pepper/event_conversion.h
index 057d911..0fa849cd 100644
--- a/webkit/plugins/ppapi/event_conversion.h
+++ b/content/renderer/pepper/event_conversion.h
@@ -2,15 +2,14 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_EVENT_CONVERSION_H_
-#define WEBKIT_PLUGINS_PPAPI_EVENT_CONVERSION_H_
+#ifndef CONTENT_RENDERER_PEPPER_EVENT_CONVERSION_H_
+#define CONTENT_RENDERER_PEPPER_EVENT_CONVERSION_H_
 
 #include <vector>
 
 #include "base/memory/linked_ptr.h"
 #include "ppapi/c/ppb_input_event.h"
 #include "third_party/WebKit/public/web/WebInputEvent.h"
-#include "webkit/plugins/webkit_plugins_export.h"
 
 struct PP_InputEvent;
 
@@ -34,7 +33,7 @@
 
 // Creates a WebInputEvent from the given PP_InputEvent.  If it fails, returns
 // NULL.  The caller owns the created object on success.
-WEBKIT_PLUGINS_EXPORT WebKit::WebInputEvent* CreateWebInputEvent(
+WebKit::WebInputEvent* CreateWebInputEvent(
     const ::ppapi::InputEventData& event);
 
 // Creates an array of WebInputEvents to make the given event look like a user
@@ -52,4 +51,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_EVENT_CONVERSION_H_
+#endif  // CONTENT_RENDERER_PEPPER_EVENT_CONVERSION_H_
diff --git a/webkit/plugins/ppapi/fullscreen_container.h b/content/renderer/pepper/fullscreen_container.h
similarity index 81%
rename from webkit/plugins/ppapi/fullscreen_container.h
rename to content/renderer/pepper/fullscreen_container.h
index f2ee848..805c187 100644
--- a/webkit/plugins/ppapi/fullscreen_container.h
+++ b/content/renderer/pepper/fullscreen_container.h
@@ -2,12 +2,13 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_PPB_FULLSCREEN_CONTAINER_IMPL_H_
-#define WEBKIT_PLUGINS_PPAPI_PPB_FULLSCREEN_CONTAINER_IMPL_H_
+#ifndef CONTENT_RENDERER_PEPPER_PPB_FULLSCREEN_CONTAINER_IMPL_H_
+#define CONTENT_RENDERER_PEPPER_PPB_FULLSCREEN_CONTAINER_IMPL_H_
 
-#include "webkit/plugins/ppapi/plugin_delegate.h"
+#include "content/renderer/pepper/plugin_delegate.h"
 
 namespace WebKit {
+class WebLayer;
 struct WebCursorInfo;
 struct WebRect;
 }  // namespace WebKit
@@ -44,4 +45,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_PPB_FULLSCREEN_CONTAINER_IMPL_H_
+#endif  // CONTENT_RENDERER_PEPPER_PPB_FULLSCREEN_CONTAINER_IMPL_H_
diff --git a/webkit/plugins/ppapi/gfx_conversion.h b/content/renderer/pepper/gfx_conversion.h
similarity index 88%
rename from webkit/plugins/ppapi/gfx_conversion.h
rename to content/renderer/pepper/gfx_conversion.h
index 80df6f5..77e7001 100644
--- a/webkit/plugins/ppapi/gfx_conversion.h
+++ b/content/renderer/pepper/gfx_conversion.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_GFX_CONVERSION_H_
-#define WEBKIT_PLUGINS_PPAPI_GFX_CONVERSION_H_
+#ifndef CONTENT_RENDERER_PEPPER_GFX_CONVERSION_H_
+#define CONTENT_RENDERER_PEPPER_GFX_CONVERSION_H_
 
 #include "ppapi/c/pp_point.h"
 #include "ppapi/c/pp_rect.h"
@@ -45,4 +45,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_GFX_CONVERSION_H_
+#endif  // CONTENT_RENDERER_PEPPER_GFX_CONVERSION_H_
diff --git a/webkit/plugins/ppapi/host_array_buffer_var.cc b/content/renderer/pepper/host_array_buffer_var.cc
similarity index 91%
rename from webkit/plugins/ppapi/host_array_buffer_var.cc
rename to content/renderer/pepper/host_array_buffer_var.cc
index 38ed2d5..565db42 100644
--- a/webkit/plugins/ppapi/host_array_buffer_var.cc
+++ b/content/renderer/pepper/host_array_buffer_var.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/host_array_buffer_var.h"
+#include "content/renderer/pepper/host_array_buffer_var.h"
 
 #include <stdio.h>
 #include <string.h>
@@ -10,10 +10,10 @@
 #include "base/logging.h"
 #include "base/memory/scoped_ptr.h"
 #include "base/process_util.h"
+#include "content/renderer/pepper/host_globals.h"
+#include "content/renderer/pepper/plugin_module.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
 #include "ppapi/c/pp_instance.h"
-#include "webkit/plugins/ppapi/host_globals.h"
-#include "webkit/plugins/ppapi/plugin_module.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
 
 using ppapi::ArrayBufferVar;
 using WebKit::WebArrayBuffer;
diff --git a/webkit/plugins/ppapi/host_array_buffer_var.h b/content/renderer/pepper/host_array_buffer_var.h
similarity index 87%
rename from webkit/plugins/ppapi/host_array_buffer_var.h
rename to content/renderer/pepper/host_array_buffer_var.h
index 4ced697..b1bd16a 100644
--- a/webkit/plugins/ppapi/host_array_buffer_var.h
+++ b/content/renderer/pepper/host_array_buffer_var.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef PPAPI_WEBKIT_PLUGINS_PPAPI_HOST_ARRAY_BUFFER_VAR_H_
-#define PPAPI_WEBKIT_PLUGINS_PPAPI_HOST_ARRAY_BUFFER_VAR_H_
+#ifndef PPAPI_CONTENT_RENDERER_PEPPER_HOST_ARRAY_BUFFER_VAR_H_
+#define PPAPI_CONTENT_RENDERER_PEPPER_HOST_ARRAY_BUFFER_VAR_H_
 
 #include "base/memory/shared_memory.h"
 #include "ppapi/c/pp_instance.h"
@@ -21,7 +21,6 @@
   explicit HostArrayBufferVar(const WebKit::WebArrayBuffer& buffer);
   explicit HostArrayBufferVar(uint32 size_in_bytes,
                               base::SharedMemoryHandle handle);
-  virtual ~HostArrayBufferVar();
 
   // ArrayBufferVar implementation.
   virtual void* Map() OVERRIDE;
@@ -35,6 +34,8 @@
   WebKit::WebArrayBuffer& webkit_buffer() { return buffer_; }
 
  private:
+  virtual ~HostArrayBufferVar();
+
   WebKit::WebArrayBuffer buffer_;
   // Tracks whether the data in the buffer is valid.
   bool valid_;
@@ -45,4 +46,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // PPAPI_WEBKIT_PLUGINS_PPAPI_HOST_ARRAY_BUFFER_VAR_H_
+#endif  // PPAPI_CONTENT_RENDERER_PEPPER_HOST_ARRAY_BUFFER_VAR_H_
diff --git a/webkit/plugins/ppapi/host_globals.cc b/content/renderer/pepper/host_globals.cc
similarity index 97%
rename from webkit/plugins/ppapi/host_globals.cc
rename to content/renderer/pepper/host_globals.cc
index 7d9c002..ccc9f840 100644
--- a/webkit/plugins/ppapi/host_globals.cc
+++ b/content/renderer/pepper/host_globals.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/host_globals.h"
+#include "content/renderer/pepper/host_globals.h"
 
 #include <limits>
 
@@ -11,6 +11,8 @@
 #include "base/rand_util.h"
 #include "base/strings/utf_string_conversions.h"
 #include "base/task_runner.h"
+#include "content/renderer/pepper/plugin_module.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
 #include "ppapi/shared_impl/api_id.h"
 #include "ppapi/shared_impl/id_assignment.h"
 #include "third_party/WebKit/public/platform/WebString.h"
@@ -20,8 +22,6 @@
 #include "third_party/WebKit/public/web/WebFrame.h"
 #include "third_party/WebKit/public/web/WebPluginContainer.h"
 #include "webkit/plugins/plugin_switches.h"
-#include "webkit/plugins/ppapi/plugin_module.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
 
 using ppapi::CheckIdType;
 using ppapi::MakeTypedId;
diff --git a/webkit/plugins/ppapi/host_globals.h b/content/renderer/pepper/host_globals.h
similarity index 91%
rename from webkit/plugins/ppapi/host_globals.h
rename to content/renderer/pepper/host_globals.h
index 774445ae..1689259 100644
--- a/webkit/plugins/ppapi/host_globals.h
+++ b/content/renderer/pepper/host_globals.h
@@ -2,16 +2,15 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_HOST_GLOBALS_H_
-#define WEBKIT_PLUGINS_PPAPI_HOST_GLOBALS_H_
+#ifndef CONTENT_RENDERER_PEPPER_HOST_GLOBALS_H_
+#define CONTENT_RENDERER_PEPPER_HOST_GLOBALS_H_
 
 #include "base/compiler_specific.h"
+#include "content/renderer/pepper/host_var_tracker.h"
 #include "ppapi/shared_impl/callback_tracker.h"
 #include "ppapi/shared_impl/ppapi_globals.h"
 #include "ppapi/shared_impl/resource_tracker.h"
 #include "ppapi/shared_impl/var_tracker.h"
-#include "webkit/plugins/ppapi/host_var_tracker.h"
-#include "webkit/plugins/webkit_plugins_export.h"
 
 namespace webkit {
 namespace ppapi {
@@ -90,13 +89,13 @@
   // Returns a pointer to the plugin instance object associated with the given
   // instance handle. The return value will be NULL if the handle is invalid or
   // if the instance has crashed.
-  WEBKIT_PLUGINS_EXPORT PluginInstanceImpl* GetInstance(PP_Instance instance);
+  PluginInstanceImpl* GetInstance(PP_Instance instance);
 
  private:
   // PpapiGlobals overrides.
   virtual bool IsHostGlobals() const OVERRIDE;
 
-  WEBKIT_PLUGINS_EXPORT static HostGlobals* host_globals_;
+  static HostGlobals* host_globals_;
 
   ::ppapi::ResourceTracker resource_tracker_;
   HostVarTracker host_var_tracker_;
@@ -116,4 +115,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif   // WEBKIT_PLUGINS_PPAPI_HOST_GLOBALS_H_
+#endif   // CONTENT_RENDERER_PEPPER_HOST_GLOBALS_H_
diff --git a/webkit/plugins/ppapi/host_var_tracker.cc b/content/renderer/pepper/host_var_tracker.cc
similarity index 95%
rename from webkit/plugins/ppapi/host_var_tracker.cc
rename to content/renderer/pepper/host_var_tracker.cc
index 4c1c159..b61af73 100644
--- a/webkit/plugins/ppapi/host_var_tracker.cc
+++ b/content/renderer/pepper/host_var_tracker.cc
@@ -2,13 +2,13 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/host_var_tracker.h"
+#include "content/renderer/pepper/host_var_tracker.h"
 
 #include "base/logging.h"
+#include "content/renderer/pepper/host_array_buffer_var.h"
+#include "content/renderer/pepper/npobject_var.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
 #include "ppapi/c/pp_var.h"
-#include "webkit/plugins/ppapi/host_array_buffer_var.h"
-#include "webkit/plugins/ppapi/npobject_var.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
 
 using ppapi::ArrayBufferVar;
 using ppapi::NPObjectVar;
diff --git a/webkit/plugins/ppapi/host_var_tracker.h b/content/renderer/pepper/host_var_tracker.h
similarity index 93%
rename from webkit/plugins/ppapi/host_var_tracker.h
rename to content/renderer/pepper/host_var_tracker.h
index 70d0d5c..9ff0dbd 100644
--- a/webkit/plugins/ppapi/host_var_tracker.h
+++ b/content/renderer/pepper/host_var_tracker.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_HOST_VAR_TRACKER_H_
-#define WEBKIT_PLUGINS_PPAPI_HOST_VAR_TRACKER_H_
+#ifndef CONTENT_RENDERER_PEPPER_HOST_VAR_TRACKER_H_
+#define CONTENT_RENDERER_PEPPER_HOST_VAR_TRACKER_H_
 
 #include <map>
 
@@ -13,11 +13,11 @@
 #include "base/gtest_prod_util.h"
 #include "base/memory/linked_ptr.h"
 #include "base/memory/ref_counted.h"
+#include "content/common/content_export.h"
 #include "ppapi/c/pp_instance.h"
 #include "ppapi/shared_impl/host_resource.h"
 #include "ppapi/shared_impl/resource_tracker.h"
 #include "ppapi/shared_impl/var_tracker.h"
-#include "webkit/plugins/webkit_plugins_export.h"
 
 typedef struct NPObject NPObject;
 
@@ -52,7 +52,7 @@
 
   // Returns the number of NPObjectVar's associated with the given instance.
   // Returns 0 if the instance isn't known.
-  WEBKIT_PLUGINS_EXPORT int GetLiveNPObjectVarsForInstance(
+  CONTENT_EXPORT int GetLiveNPObjectVarsForInstance(
       PP_Instance instance) const;
 
   // VarTracker public implementation.
@@ -107,4 +107,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_HOST_VAR_TRACKER_H_
+#endif  // CONTENT_RENDERER_PEPPER_HOST_VAR_TRACKER_H_
diff --git a/webkit/plugins/ppapi/host_var_tracker_unittest.cc b/content/renderer/pepper/host_var_tracker_unittest.cc
similarity index 89%
rename from webkit/plugins/ppapi/host_var_tracker_unittest.cc
rename to content/renderer/pepper/host_var_tracker_unittest.cc
index 5511901..037f059e 100644
--- a/webkit/plugins/ppapi/host_var_tracker_unittest.cc
+++ b/content/renderer/pepper/host_var_tracker_unittest.cc
@@ -2,20 +2,20 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/ppapi_unittest.h"
+#include "content/renderer/pepper/ppapi_unittest.h"
 
 #include "base/memory/scoped_ptr.h"
+#include "content/renderer/pepper/host_globals.h"
+#include "content/renderer/pepper/host_var_tracker.h"
+#include "content/renderer/pepper/mock_plugin_delegate.h"
+#include "content/renderer/pepper/mock_resource.h"
+#include "content/renderer/pepper/npapi_glue.h"
+#include "content/renderer/pepper/npobject_var.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
 #include "ppapi/c/pp_var.h"
 #include "ppapi/c/ppp_instance.h"
 #include "third_party/npapi/bindings/npruntime.h"
 #include "third_party/WebKit/public/web/WebBindings.h"
-#include "webkit/plugins/ppapi/host_globals.h"
-#include "webkit/plugins/ppapi/host_var_tracker.h"
-#include "webkit/plugins/ppapi/mock_plugin_delegate.h"
-#include "webkit/plugins/ppapi/mock_resource.h"
-#include "webkit/plugins/ppapi/npapi_glue.h"
-#include "webkit/plugins/ppapi/npobject_var.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
 
 using ppapi::NPObjectVar;
 
diff --git a/webkit/plugins/ppapi/message_channel.cc b/content/renderer/pepper/message_channel.cc
similarity index 97%
rename from webkit/plugins/ppapi/message_channel.cc
rename to content/renderer/pepper/message_channel.cc
index eb25d2c..ea3bdf5 100644
--- a/webkit/plugins/ppapi/message_channel.cc
+++ b/content/renderer/pepper/message_channel.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/message_channel.h"
+#include "content/renderer/pepper/message_channel.h"
 
 #include <cstdlib>
 #include <string>
@@ -10,6 +10,11 @@
 #include "base/bind.h"
 #include "base/logging.h"
 #include "base/message_loop/message_loop.h"
+#include "content/renderer/pepper/host_array_buffer_var.h"
+#include "content/renderer/pepper/npapi_glue.h"
+#include "content/renderer/pepper/plugin_module.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
+#include "content/renderer/pepper/v8_var_converter.h"
 #include "ppapi/shared_impl/ppapi_globals.h"
 #include "ppapi/shared_impl/var.h"
 #include "ppapi/shared_impl/var_tracker.h"
@@ -22,11 +27,6 @@
 #include "third_party/WebKit/public/web/WebPluginContainer.h"
 #include "third_party/WebKit/public/web/WebSerializedScriptValue.h"
 #include "v8/include/v8.h"
-#include "webkit/plugins/ppapi/host_array_buffer_var.h"
-#include "webkit/plugins/ppapi/npapi_glue.h"
-#include "webkit/plugins/ppapi/plugin_module.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
-#include "webkit/plugins/ppapi/v8_var_converter.h"
 
 using ppapi::ArrayBufferVar;
 using ppapi::PpapiGlobals;
diff --git a/webkit/plugins/ppapi/message_channel.h b/content/renderer/pepper/message_channel.h
similarity index 96%
rename from webkit/plugins/ppapi/message_channel.h
rename to content/renderer/pepper/message_channel.h
index bc770c8..322c4b4 100644
--- a/webkit/plugins/ppapi/message_channel.h
+++ b/content/renderer/pepper/message_channel.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_MESSAGE_CHANNEL_H_
-#define WEBKIT_PLUGINS_PPAPI_MESSAGE_CHANNEL_H_
+#ifndef CONTENT_RENDERER_PEPPER_MESSAGE_CHANNEL_H_
+#define CONTENT_RENDERER_PEPPER_MESSAGE_CHANNEL_H_
 
 #include <deque>
 
@@ -120,4 +120,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_MESSAGE_CHANNEL_H_
+#endif  // CONTENT_RENDERER_PEPPER_MESSAGE_CHANNEL_H_
diff --git a/webkit/plugins/ppapi/mock_platform_image_2d.cc b/content/renderer/pepper/mock_platform_image_2d.cc
similarity index 92%
rename from webkit/plugins/ppapi/mock_platform_image_2d.cc
rename to content/renderer/pepper/mock_platform_image_2d.cc
index f95f987..2aba190 100644
--- a/webkit/plugins/ppapi/mock_platform_image_2d.cc
+++ b/content/renderer/pepper/mock_platform_image_2d.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/mock_platform_image_2d.h"
+#include "content/renderer/pepper/mock_platform_image_2d.h"
 
 #include "skia/ext/platform_canvas.h"
 
diff --git a/webkit/plugins/ppapi/mock_platform_image_2d.h b/content/renderer/pepper/mock_platform_image_2d.h
similarity index 75%
rename from webkit/plugins/ppapi/mock_platform_image_2d.h
rename to content/renderer/pepper/mock_platform_image_2d.h
index 51859638..eedd4af 100644
--- a/webkit/plugins/ppapi/mock_platform_image_2d.h
+++ b/content/renderer/pepper/mock_platform_image_2d.h
@@ -2,10 +2,10 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_MOCK_PLATFORM_IMAGE_2D_H_
-#define WEBKIT_PLUGINS_PPAPI_MOCK_PLATFORM_IMAGE_2D_H_
+#ifndef CONTENT_RENDERER_PEPPER_MOCK_PLATFORM_IMAGE_2D_H_
+#define CONTENT_RENDERER_PEPPER_MOCK_PLATFORM_IMAGE_2D_H_
 
-#include "webkit/plugins/ppapi/plugin_delegate.h"
+#include "content/renderer/pepper/plugin_delegate.h"
 #include "skia/ext/platform_canvas.h"
 
 namespace webkit {
@@ -29,4 +29,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_MOCK_PLATFORM_IMAGE_2D_H_
+#endif  // CONTENT_RENDERER_PEPPER_MOCK_PLATFORM_IMAGE_2D_H_
diff --git a/webkit/plugins/ppapi/mock_plugin_delegate.cc b/content/renderer/pepper/mock_plugin_delegate.cc
similarity index 95%
rename from webkit/plugins/ppapi/mock_plugin_delegate.cc
rename to content/renderer/pepper/mock_plugin_delegate.cc
index a40adc0..aae195e 100644
--- a/webkit/plugins/ppapi/mock_plugin_delegate.cc
+++ b/content/renderer/pepper/mock_plugin_delegate.cc
@@ -2,18 +2,18 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/mock_plugin_delegate.h"
+#include "content/renderer/pepper/mock_plugin_delegate.h"
 
 #include "base/logging.h"
 #include "base/message_loop/message_loop_proxy.h"
+#include "content/renderer/pepper/mock_platform_image_2d.h"
+#include "content/renderer/pepper/plugin_delegate.h"
+#include "content/renderer/pepper/plugin_module.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
 #include "ppapi/c/pp_errors.h"
 #include "ppapi/shared_impl/ppapi_permissions.h"
 #include "ppapi/shared_impl/ppapi_preferences.h"
 #include "third_party/WebKit/public/platform/WebGamepads.h"
-#include "webkit/plugins/ppapi/mock_platform_image_2d.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
-#include "webkit/plugins/ppapi/plugin_module.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
 
 namespace webkit {
 namespace ppapi {
@@ -337,18 +337,6 @@
                                            double maximum_factor) {
 }
 
-void MockPluginDelegate::DidStartLoading() {
-}
-
-void MockPluginDelegate::DidStopLoading() {
-}
-
-void MockPluginDelegate::SetContentRestriction(int restrictions) {
-}
-
-void MockPluginDelegate::SaveURLAs(const GURL& url) {
-}
-
 base::SharedMemory* MockPluginDelegate::CreateAnonymousSharedMemory(
     size_t size) {
   return NULL;
diff --git a/content/renderer/pepper/mock_plugin_delegate.h b/content/renderer/pepper/mock_plugin_delegate.h
new file mode 100644
index 0000000..8631dd7
--- /dev/null
+++ b/content/renderer/pepper/mock_plugin_delegate.h
@@ -0,0 +1,205 @@
+// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef CONTENT_RENDERER_PEPPER_MOCK_PLUGIN_DELEGATE_H_
+#define CONTENT_RENDERER_PEPPER_MOCK_PLUGIN_DELEGATE_H_
+
+#include "content/renderer/pepper/plugin_delegate.h"
+
+struct PP_NetAddress_Private;
+namespace ppapi { class PPB_X509Certificate_Fields; }
+
+namespace webkit {
+namespace ppapi {
+
+class MockPluginDelegate : public PluginDelegate {
+ public:
+  MockPluginDelegate();
+  virtual ~MockPluginDelegate();
+
+  virtual void PluginFocusChanged(PluginInstanceImpl* instance,
+                                  bool focused) OVERRIDE;
+  virtual void PluginTextInputTypeChanged(
+      PluginInstanceImpl* instance) OVERRIDE;
+  virtual void PluginCaretPositionChanged(
+      PluginInstanceImpl* instance) OVERRIDE;
+  virtual void PluginRequestedCancelComposition(
+      PluginInstanceImpl* instance) OVERRIDE;
+  virtual void PluginSelectionChanged(PluginInstanceImpl* instance) OVERRIDE;
+  virtual void SimulateImeSetComposition(
+      const base::string16& text,
+      const std::vector<WebKit::WebCompositionUnderline>& underlines,
+      int selection_start,
+      int selection_end) OVERRIDE;
+  virtual void SimulateImeConfirmComposition(
+      const base::string16& text) OVERRIDE;
+  virtual void PluginCrashed(PluginInstanceImpl* instance) OVERRIDE;
+  virtual void InstanceCreated(PluginInstanceImpl* instance) OVERRIDE;
+  virtual void InstanceDeleted(PluginInstanceImpl* instance) OVERRIDE;
+  virtual scoped_ptr< ::ppapi::thunk::ResourceCreationAPI>
+      CreateResourceCreationAPI(PluginInstanceImpl* instance) OVERRIDE;
+  virtual SkBitmap* GetSadPluginBitmap() OVERRIDE;
+  virtual WebKit::WebPlugin* CreatePluginReplacement(
+      const base::FilePath& file_path) OVERRIDE;
+  virtual PlatformImage2D* CreateImage2D(int width, int height) OVERRIDE;
+  virtual PlatformGraphics2D* GetGraphics2D(PluginInstanceImpl* instance,
+                                            PP_Resource graphics_2d) OVERRIDE;
+  virtual PlatformContext3D* CreateContext3D() OVERRIDE;
+  virtual PlatformVideoDecoder* CreateVideoDecoder(
+      media::VideoDecodeAccelerator::Client* client,
+      int32 command_buffer_route_id) OVERRIDE;
+  virtual PlatformVideoCapture* CreateVideoCapture(
+      const std::string& device_id,
+      const GURL& document_url,
+      PlatformVideoCaptureEventHandler* handler) OVERRIDE;
+  virtual uint32_t GetAudioHardwareOutputSampleRate() OVERRIDE;
+  virtual uint32_t GetAudioHardwareOutputBufferSize() OVERRIDE;
+  virtual PlatformAudioOutput* CreateAudioOutput(
+      uint32_t sample_rate,
+      uint32_t sample_count,
+      PlatformAudioOutputClient* client) OVERRIDE;
+  virtual PlatformAudioInput* CreateAudioInput(
+      const std::string& device_id,
+      const GURL& document_url,
+      uint32_t sample_rate,
+      uint32_t sample_count,
+      PlatformAudioInputClient* client) OVERRIDE;
+  virtual Broker* ConnectToBroker(PPB_Broker_Impl* client) OVERRIDE;
+  virtual void NumberOfFindResultsChanged(int identifier,
+                                          int total,
+                                          bool final_result) OVERRIDE;
+  virtual void SelectedFindResultChanged(int identifier, int index) OVERRIDE;
+  virtual bool AsyncOpenFile(const base::FilePath& path,
+                             int flags,
+                             const AsyncOpenFileCallback& callback) OVERRIDE;
+  virtual void AsyncOpenFileSystemURL(
+      const GURL& path,
+      int flags,
+      const AsyncOpenFileSystemURLCallback& callback) OVERRIDE;
+  virtual bool IsFileSystemOpened(PP_Instance instance,
+                                  PP_Resource resource) const OVERRIDE;
+  virtual PP_FileSystemType GetFileSystemType(
+      PP_Instance instance,
+      PP_Resource resource) const OVERRIDE;
+  virtual GURL GetFileSystemRootUrl(PP_Instance instance,
+                                    PP_Resource resource) const OVERRIDE;
+  virtual void MakeDirectory(
+      const GURL& path,
+      bool recursive,
+      const StatusCallback& callback) OVERRIDE;
+  virtual void Query(const GURL& path,
+                     const MetadataCallback& success_callback,
+                     const StatusCallback& error_callback) OVERRIDE;
+  virtual void ReadDirectoryEntries(
+      const GURL& path,
+      const ReadDirectoryCallback& success_callback,
+      const StatusCallback& error_callback) OVERRIDE;
+  virtual void Touch(const GURL& path,
+                     const base::Time& last_access_time,
+                     const base::Time& last_modified_time,
+                     const StatusCallback& callback) OVERRIDE;
+  virtual void SetLength(const GURL& path,
+                         int64_t length,
+                         const StatusCallback& callback) OVERRIDE;
+  virtual void Delete(const GURL& path,
+                      const StatusCallback& callback) OVERRIDE;
+  virtual void Rename(const GURL& file_path,
+                      const GURL& new_file_path,
+                      const StatusCallback& callback) OVERRIDE;
+  virtual void ReadDirectory(
+      const GURL& directory_path,
+      const ReadDirectoryCallback& success_callback,
+      const StatusCallback& error_callback) OVERRIDE;
+  virtual void QueryAvailableSpace(
+      const GURL& origin,
+      quota::StorageType type,
+      const AvailableSpaceCallback& callback) OVERRIDE;
+  virtual void WillUpdateFile(const GURL& file_path) OVERRIDE;
+  virtual void DidUpdateFile(const GURL& file_path, int64_t delta) OVERRIDE;
+  virtual void SyncGetFileSystemPlatformPath(
+      const GURL& url,
+      base::FilePath* platform_path) OVERRIDE;
+  virtual scoped_refptr<base::MessageLoopProxy>
+      GetFileThreadMessageLoopProxy() OVERRIDE;
+  virtual uint32 TCPSocketCreate() OVERRIDE;
+  virtual void TCPSocketConnect(PPB_TCPSocket_Private_Impl* socket,
+                                uint32 socket_id,
+                                const std::string& host,
+                                uint16_t port) OVERRIDE;
+  virtual void TCPSocketConnectWithNetAddress(
+      PPB_TCPSocket_Private_Impl* socket,
+      uint32 socket_id,
+      const PP_NetAddress_Private& addr) OVERRIDE;
+  virtual void TCPSocketSSLHandshake(
+      uint32 socket_id,
+      const std::string& server_name,
+      uint16_t server_port,
+      const std::vector<std::vector<char> >& trusted_certs,
+      const std::vector<std::vector<char> >& untrusted_certs) OVERRIDE;
+  virtual void TCPSocketRead(uint32 socket_id, int32_t bytes_to_read) OVERRIDE;
+  virtual void TCPSocketWrite(uint32 socket_id,
+                              const std::string& buffer) OVERRIDE;
+  virtual void TCPSocketDisconnect(uint32 socket_id) OVERRIDE;
+  virtual void TCPSocketSetOption(
+      uint32 socket_id,
+      PP_TCPSocket_Option name,
+      const ::ppapi::SocketOptionData& value) OVERRIDE;
+  virtual void RegisterTCPSocket(PPB_TCPSocket_Private_Impl* socket,
+                                 uint32 socket_id) OVERRIDE;
+  virtual void TCPServerSocketListen(PP_Resource socket_resource,
+                                     const PP_NetAddress_Private& addr,
+                                     int32_t backlog) OVERRIDE;
+  virtual void TCPServerSocketAccept(uint32 server_socket_id) OVERRIDE;
+  virtual void TCPServerSocketStopListening(PP_Resource socket_resource,
+                                            uint32 socket_id) OVERRIDE;
+  // Add/remove a network list observer.
+  virtual bool AddNetworkListObserver(
+      webkit_glue::NetworkListObserver* observer) OVERRIDE;
+  virtual void RemoveNetworkListObserver(
+      webkit_glue::NetworkListObserver* observer) OVERRIDE;
+  virtual bool X509CertificateParseDER(
+      const std::vector<char>& der,
+      ::ppapi::PPB_X509Certificate_Fields* fields) OVERRIDE;
+  virtual FullscreenContainer* CreateFullscreenContainer(
+      PluginInstanceImpl* instance) OVERRIDE;
+  virtual gfx::Size GetScreenSize() OVERRIDE;
+  virtual std::string GetDefaultEncoding() OVERRIDE;
+  virtual void ZoomLimitsChanged(double minimum_factor,
+                                 double maximum_factor) OVERRIDE;
+  virtual base::SharedMemory* CreateAnonymousSharedMemory(size_t size) OVERRIDE;
+  virtual ::ppapi::Preferences GetPreferences() OVERRIDE;
+  virtual bool LockMouse(PluginInstanceImpl* instance) OVERRIDE;
+  virtual void UnlockMouse(PluginInstanceImpl* instance) OVERRIDE;
+  virtual bool IsMouseLocked(PluginInstanceImpl* instance) OVERRIDE;
+  virtual void DidChangeCursor(PluginInstanceImpl* instance,
+                               const WebKit::WebCursorInfo& cursor) OVERRIDE;
+  virtual void DidReceiveMouseEvent(PluginInstanceImpl* instance) OVERRIDE;
+  virtual void SampleGamepads(WebKit::WebGamepads* data) OVERRIDE;
+  virtual bool IsInFullscreenMode() OVERRIDE;
+  virtual bool IsPageVisible() const OVERRIDE;
+  virtual int EnumerateDevices(
+      PP_DeviceType_Dev type,
+      const EnumerateDevicesCallback& callback) OVERRIDE;
+  virtual void StopEnumerateDevices(int request_id) OVERRIDE;
+  virtual IPC::PlatformFileForTransit ShareHandleWithRemote(
+      base::PlatformFile handle,
+      base::ProcessId target_process_id,
+      bool should_close_source) const OVERRIDE;
+  virtual bool IsRunningInProcess(PP_Instance instance) const OVERRIDE;
+  virtual void HandleDocumentLoad(
+      PluginInstanceImpl* instance,
+      const WebKit::WebURLResponse& response) OVERRIDE;
+  virtual content::RendererPpapiHost* CreateExternalPluginModule(
+      scoped_refptr<PluginModule> module,
+      const base::FilePath& path,
+      ::ppapi::PpapiPermissions permissions,
+      const IPC::ChannelHandle& channel_handle,
+      base::ProcessId plugin_pid,
+      int plugin_child_id) OVERRIDE;
+};
+
+}  // namespace ppapi
+}  // namespace webkit
+
+#endif  // CONTENT_RENDERER_PEPPER_MOCK_PLUGIN_DELEGATE_H_
diff --git a/webkit/plugins/ppapi/mock_resource.h b/content/renderer/pepper/mock_resource.h
similarity index 80%
rename from webkit/plugins/ppapi/mock_resource.h
rename to content/renderer/pepper/mock_resource.h
index 01f7fb6..60531f0 100644
--- a/webkit/plugins/ppapi/mock_resource.h
+++ b/content/renderer/pepper/mock_resource.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_MOCK_RESOURCE_H_
-#define WEBKIT_PLUGINS_PPAPI_MOCK_RESOURCE_H_
+#ifndef CONTENT_RENDERER_PEPPER_MOCK_RESOURCE_H_
+#define CONTENT_RENDERER_PEPPER_MOCK_RESOURCE_H_
 
 #include "ppapi/shared_impl/resource.h"
 
@@ -17,10 +17,12 @@
  public:
   MockResource(PP_Instance instance)
       : Resource(::ppapi::OBJECT_IS_IMPL, instance) {}
+
+ private:
   virtual ~MockResource() {}
 };
 
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_MOCK_RESOURCE_H_
+#endif  // CONTENT_RENDERER_PEPPER_MOCK_RESOURCE_H_
diff --git a/webkit/plugins/ppapi/npapi_glue.cc b/content/renderer/pepper/npapi_glue.cc
similarity index 95%
rename from webkit/plugins/ppapi/npapi_glue.cc
rename to content/renderer/pepper/npapi_glue.cc
index 7452614a..f8b0c52 100644
--- a/webkit/plugins/ppapi/npapi_glue.cc
+++ b/content/renderer/pepper/npapi_glue.cc
@@ -2,11 +2,18 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/npapi_glue.h"
+#include "content/renderer/pepper/npapi_glue.h"
 
 #include "base/logging.h"
 #include "base/memory/ref_counted.h"
 #include "base/strings/string_util.h"
+#include "content/renderer/pepper/host_array_buffer_var.h"
+#include "content/renderer/pepper/host_globals.h"
+#include "content/renderer/pepper/host_var_tracker.h"
+#include "content/renderer/pepper/npobject_var.h"
+#include "content/renderer/pepper/plugin_module.h"
+#include "content/renderer/pepper/plugin_object.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
 #include "ppapi/c/pp_var.h"
 #include "third_party/npapi/bindings/npapi.h"
 #include "third_party/npapi/bindings/npruntime.h"
@@ -16,13 +23,6 @@
 #include "third_party/WebKit/public/web/WebFrame.h"
 #include "third_party/WebKit/public/web/WebPluginContainer.h"
 #include "v8/include/v8.h"
-#include "webkit/plugins/ppapi/host_array_buffer_var.h"
-#include "webkit/plugins/ppapi/host_globals.h"
-#include "webkit/plugins/ppapi/host_var_tracker.h"
-#include "webkit/plugins/ppapi/npobject_var.h"
-#include "webkit/plugins/ppapi/plugin_module.h"
-#include "webkit/plugins/ppapi/plugin_object.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
 
 using ppapi::NPObjectVar;
 using ppapi::PpapiGlobals;
diff --git a/webkit/plugins/ppapi/npapi_glue.h b/content/renderer/pepper/npapi_glue.h
similarity index 94%
rename from webkit/plugins/ppapi/npapi_glue.h
rename to content/renderer/pepper/npapi_glue.h
index 99710e7..5cc745b 100644
--- a/webkit/plugins/ppapi/npapi_glue.h
+++ b/content/renderer/pepper/npapi_glue.h
@@ -2,14 +2,14 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_NPAPI_GLUE_H_
-#define WEBKIT_PLUGINS_PPAPI_NPAPI_GLUE_H_
+#ifndef CONTENT_RENDERER_PEPPER_NPAPI_GLUE_H_
+#define CONTENT_RENDERER_PEPPER_NPAPI_GLUE_H_
 
 #include "base/basictypes.h"
 #include "base/memory/scoped_ptr.h"
+#include "content/common/content_export.h"
 #include "ppapi/c/pp_module.h"
 #include "ppapi/c/pp_var.h"
-#include "webkit/plugins/webkit_plugins_export.h"
 
 struct NPObject;
 typedef struct _NPVariant NPVariant;
@@ -38,8 +38,7 @@
 //
 // The returned PP_Var will have a refcount of 1, this passing ownership of
 // the reference to the caller. This is suitable for returning to a plugin.
-WEBKIT_PLUGINS_EXPORT PP_Var NPVariantToPPVar(PluginInstanceImpl* instance,
-                                              const NPVariant* variant);
+PP_Var NPVariantToPPVar(PluginInstanceImpl* instance, const NPVariant* variant);
 
 // Returns a NPIdentifier that corresponds to the given PP_Var. The contents
 // of the PP_Var will be copied. Returns 0 if the given PP_Var is not a a
@@ -65,15 +64,14 @@
 // Note: this could easily be changed to take a PP_Instance instead if that
 // makes certain calls in the future easier. Currently all callers have a
 // PluginInstance so that's what we use here.
-WEBKIT_PLUGINS_EXPORT PP_Var NPObjectToPPVar(PluginInstanceImpl* instance,
-                                             NPObject* object);
+CONTENT_EXPORT PP_Var NPObjectToPPVar(PluginInstanceImpl* instance,
+                                      NPObject* object);
 
 // This version creates a default v8::Context rather than using the one from
 // the container of |instance|. It is only for use in unit tests, where we don't
 // have a real container for |instance|.
-WEBKIT_PLUGINS_EXPORT PP_Var NPObjectToPPVarForTest(
-    PluginInstanceImpl* instance,
-    NPObject* object);
+CONTENT_EXPORT PP_Var NPObjectToPPVarForTest(PluginInstanceImpl* instance,
+                                             NPObject* object);
 
 // PPResultAndExceptionToNPResult ----------------------------------------------
 
@@ -264,4 +262,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_NPAPI_GLUE_H_
+#endif  // CONTENT_RENDERER_PEPPER_NPAPI_GLUE_H_
diff --git a/webkit/plugins/ppapi/npobject_var.cc b/content/renderer/pepper/npobject_var.cc
similarity index 90%
rename from webkit/plugins/ppapi/npobject_var.cc
rename to content/renderer/pepper/npobject_var.cc
index 64b5591..0ab1755 100644
--- a/webkit/plugins/ppapi/npobject_var.cc
+++ b/content/renderer/pepper/npobject_var.cc
@@ -2,13 +2,13 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/npobject_var.h"
+#include "content/renderer/pepper/npobject_var.h"
 
 #include "base/logging.h"
+#include "content/renderer/pepper/host_globals.h"
+#include "content/renderer/pepper/host_var_tracker.h"
 #include "ppapi/c/pp_var.h"
 #include "third_party/WebKit/public/web/WebBindings.h"
-#include "webkit/plugins/ppapi/host_globals.h"
-#include "webkit/plugins/ppapi/host_var_tracker.h"
 
 using webkit::ppapi::HostGlobals;
 using WebKit::WebBindings;
diff --git a/webkit/plugins/ppapi/npobject_var.h b/content/renderer/pepper/npobject_var.h
similarity index 88%
rename from webkit/plugins/ppapi/npobject_var.h
rename to content/renderer/pepper/npobject_var.h
index 6f31e3d..6cafbb4 100644
--- a/webkit/plugins/ppapi/npobject_var.h
+++ b/content/renderer/pepper/npobject_var.h
@@ -2,15 +2,15 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_NPOBJECT_VAR_H_
-#define WEBKIT_PLUGINS_PPAPI_NPOBJECT_VAR_H_
+#ifndef CONTENT_RENDERER_PEPPER_NPOBJECT_VAR_H_
+#define CONTENT_RENDERER_PEPPER_NPOBJECT_VAR_H_
 
 #include <string>
 
 #include "base/compiler_specific.h"
 #include "ppapi/c/pp_instance.h"
 #include "ppapi/shared_impl/var.h"
-#include "webkit/plugins/webkit_plugins_export.h"
+#include "content/common/content_export.h"
 
 typedef struct NPObject NPObject;
 typedef struct _NPVariant NPVariant;
@@ -34,8 +34,6 @@
   // NPObjectVar.
   NPObjectVar(PP_Instance instance, NPObject* np_object);
 
-  virtual ~NPObjectVar();
-
   // Var overrides.
   virtual NPObjectVar* AsNPObjectVar() OVERRIDE;
   virtual PP_VarType GetType() const OVERRIDE;
@@ -53,9 +51,11 @@
 
   // Helper function that converts a PP_Var to an object. This will return NULL
   // if the PP_Var is not of object type or the object is invalid.
-  WEBKIT_PLUGINS_EXPORT static scoped_refptr<NPObjectVar> FromPPVar(PP_Var var);
+  CONTENT_EXPORT static scoped_refptr<NPObjectVar> FromPPVar(PP_Var var);
 
  private:
+  virtual ~NPObjectVar();
+
   // Possibly 0 if the object has outlived its instance.
   PP_Instance pp_instance_;
 
@@ -68,4 +68,4 @@
 
 }  // namespace
 
-#endif  // WEBKIT_PLUGINS_PPAPI_NPOBJECT_VAR_H_
+#endif  // CONTENT_RENDERER_PEPPER_NPOBJECT_VAR_H_
diff --git a/content/renderer/pepper/pepper_audio_input_host.cc b/content/renderer/pepper/pepper_audio_input_host.cc
index 280d07e..6e74126 100644
--- a/content/renderer/pepper/pepper_audio_input_host.cc
+++ b/content/renderer/pepper/pepper_audio_input_host.cc
@@ -6,6 +6,7 @@
 
 #include "base/logging.h"
 #include "build/build_config.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
 #include "content/renderer/pepper/renderer_ppapi_host_impl.h"
 #include "ipc/ipc_message.h"
 #include "media/audio/shared_memory_util.h"
@@ -17,7 +18,6 @@
 #include "third_party/WebKit/public/web/WebDocument.h"
 #include "third_party/WebKit/public/web/WebElement.h"
 #include "third_party/WebKit/public/web/WebPluginContainer.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
 
 namespace content {
 
diff --git a/content/renderer/pepper/pepper_audio_input_host.h b/content/renderer/pepper/pepper_audio_input_host.h
index 97f90138..8316ec8 100644
--- a/content/renderer/pepper/pepper_audio_input_host.h
+++ b/content/renderer/pepper/pepper_audio_input_host.h
@@ -13,11 +13,11 @@
 #include "base/memory/shared_memory.h"
 #include "base/sync_socket.h"
 #include "content/renderer/pepper/pepper_device_enumeration_host_helper.h"
+#include "content/renderer/pepper/plugin_delegate.h"
 #include "ipc/ipc_platform_file.h"
 #include "ppapi/c/ppb_audio_config.h"
 #include "ppapi/host/host_message_context.h"
 #include "ppapi/host/resource_host.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
 
 namespace content {
 
diff --git a/content/renderer/pepper/pepper_broker_impl.cc b/content/renderer/pepper/pepper_broker_impl.cc
index 842c56f..aca9f32 100644
--- a/content/renderer/pepper/pepper_broker_impl.cc
+++ b/content/renderer/pepper/pepper_broker_impl.cc
@@ -8,12 +8,12 @@
 #include "content/public/renderer/renderer_restrict_dispatch_group.h"
 #include "content/renderer/pepper/pepper_plugin_delegate_impl.h"
 #include "content/renderer/pepper/pepper_proxy_channel_delegate_impl.h"
+#include "content/renderer/pepper/plugin_module.h"
+#include "content/renderer/pepper/ppb_broker_impl.h"
 #include "ipc/ipc_channel_handle.h"
 #include "ppapi/proxy/broker_dispatcher.h"
 #include "ppapi/proxy/ppapi_messages.h"
 #include "ppapi/shared_impl/platform_file.h"
-#include "webkit/plugins/ppapi/plugin_module.h"
-#include "webkit/plugins/ppapi/ppb_broker_impl.h"
 
 #if defined(OS_WIN)
 #include <windows.h>
diff --git a/content/renderer/pepper/pepper_broker_impl.h b/content/renderer/pepper/pepper_broker_impl.h
index 26f5619..ce81d96 100644
--- a/content/renderer/pepper/pepper_broker_impl.h
+++ b/content/renderer/pepper/pepper_broker_impl.h
@@ -8,9 +8,9 @@
 #include "base/memory/ref_counted.h"
 #include "base/process/process.h"
 #include "content/common/content_export.h"
+#include "content/renderer/pepper/plugin_delegate.h"
+#include "content/renderer/pepper/ppb_broker_impl.h"
 #include "ppapi/proxy/proxy_channel.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
-#include "webkit/plugins/ppapi/ppb_broker_impl.h"
 
 namespace IPC {
 struct ChannelHandle;
diff --git a/content/renderer/pepper/pepper_device_enumeration_event_handler.h b/content/renderer/pepper/pepper_device_enumeration_event_handler.h
index b390c80..543bcdb 100644
--- a/content/renderer/pepper/pepper_device_enumeration_event_handler.h
+++ b/content/renderer/pepper/pepper_device_enumeration_event_handler.h
@@ -10,7 +10,7 @@
 #include "base/memory/weak_ptr.h"
 #include "content/renderer/media/media_stream_dispatcher_eventhandler.h"
 #include "content/renderer/pepper/pepper_plugin_delegate_impl.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
+#include "content/renderer/pepper/plugin_delegate.h"
 
 namespace content {
 
diff --git a/content/renderer/pepper/pepper_device_enumeration_host_helper.cc b/content/renderer/pepper/pepper_device_enumeration_host_helper.cc
index fca8ac5..136c9468 100644
--- a/content/renderer/pepper/pepper_device_enumeration_host_helper.cc
+++ b/content/renderer/pepper/pepper_device_enumeration_host_helper.cc
@@ -8,6 +8,7 @@
 #include "base/logging.h"
 #include "base/memory/weak_ptr.h"
 #include "base/message_loop/message_loop.h"
+#include "content/renderer/pepper/plugin_delegate.h"
 #include "ipc/ipc_message.h"
 #include "ppapi/c/pp_errors.h"
 #include "ppapi/host/dispatch_host_message.h"
@@ -16,7 +17,6 @@
 #include "ppapi/host/resource_host.h"
 #include "ppapi/proxy/ppapi_messages.h"
 #include "ppapi/shared_impl/ppb_device_ref_shared.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
 
 using ppapi::host::HostMessageContext;
 using webkit::ppapi::PluginDelegate;
diff --git a/content/renderer/pepper/pepper_device_enumeration_host_helper_unittest.cc b/content/renderer/pepper/pepper_device_enumeration_host_helper_unittest.cc
index c5616f5..f4e5714 100644
--- a/content/renderer/pepper/pepper_device_enumeration_host_helper_unittest.cc
+++ b/content/renderer/pepper/pepper_device_enumeration_host_helper_unittest.cc
@@ -7,6 +7,7 @@
 #include "base/basictypes.h"
 #include "base/compiler_specific.h"
 #include "base/logging.h"
+#include "content/renderer/pepper/mock_plugin_delegate.h"
 #include "content/renderer/pepper/pepper_device_enumeration_host_helper.h"
 #include "ppapi/c/pp_errors.h"
 #include "ppapi/host/host_message_context.h"
@@ -18,7 +19,6 @@
 #include "ppapi/proxy/resource_message_test_sink.h"
 #include "ppapi/shared_impl/ppapi_permissions.h"
 #include "testing/gtest/include/gtest/gtest.h"
-#include "webkit/plugins/ppapi/mock_plugin_delegate.h"
 
 namespace content {
 
diff --git a/content/renderer/pepper/pepper_file_chooser_host.cc b/content/renderer/pepper/pepper_file_chooser_host.cc
index 6f9b4530..8eecb07 100644
--- a/content/renderer/pepper/pepper_file_chooser_host.cc
+++ b/content/renderer/pepper/pepper_file_chooser_host.cc
@@ -7,6 +7,7 @@
 #include "base/files/file_path.h"
 #include "base/strings/utf_string_conversions.h"
 #include "content/public/renderer/renderer_ppapi_host.h"
+#include "content/renderer/pepper/ppb_file_ref_impl.h"
 #include "content/renderer/render_view_impl.h"
 #include "ppapi/c/pp_errors.h"
 #include "ppapi/host/dispatch_host_message.h"
@@ -18,7 +19,6 @@
 #include "third_party/WebKit/public/platform/WebVector.h"
 #include "third_party/WebKit/public/web/WebFileChooserCompletion.h"
 #include "third_party/WebKit/public/web/WebFileChooserParams.h"
-#include "webkit/plugins/ppapi/ppb_file_ref_impl.h"
 
 namespace content {
 
diff --git a/content/renderer/pepper/pepper_file_io_host.cc b/content/renderer/pepper/pepper_file_io_host.cc
index f5ef26e..96f0e82 100644
--- a/content/renderer/pepper/pepper_file_io_host.cc
+++ b/content/renderer/pepper/pepper_file_io_host.cc
@@ -11,6 +11,10 @@
 #include "base/files/file_util_proxy.h"
 #include "content/public/common/content_client.h"
 #include "content/public/renderer/content_renderer_client.h"
+#include "content/renderer/pepper/host_globals.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
+#include "content/renderer/pepper/ppb_file_ref_impl.h"
+#include "content/renderer/pepper/quota_file_io.h"
 #include "ppapi/c/pp_errors.h"
 #include "ppapi/host/dispatch_host_message.h"
 #include "ppapi/host/ppapi_host.h"
@@ -19,10 +23,6 @@
 #include "ppapi/shared_impl/time_conversion.h"
 #include "ppapi/thunk/enter.h"
 #include "third_party/WebKit/public/web/WebPluginContainer.h"
-#include "webkit/plugins/ppapi/host_globals.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
-#include "webkit/plugins/ppapi/ppb_file_ref_impl.h"
-#include "webkit/plugins/ppapi/quota_file_io.h"
 
 namespace content {
 
diff --git a/content/renderer/pepper/pepper_file_io_host.h b/content/renderer/pepper/pepper_file_io_host.h
index 62e43560..89e70f75 100644
--- a/content/renderer/pepper/pepper_file_io_host.h
+++ b/content/renderer/pepper/pepper_file_io_host.h
@@ -11,11 +11,11 @@
 #include "base/basictypes.h"
 #include "base/memory/weak_ptr.h"
 #include "content/public/renderer/renderer_ppapi_host.h"
+#include "content/renderer/pepper/plugin_delegate.h"
 #include "ppapi/host/host_message_context.h"
 #include "ppapi/host/resource_host.h"
 #include "ppapi/shared_impl/file_io_state_manager.h"
 #include "ppapi/thunk/ppb_file_ref_api.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
 
 using ppapi::host::ReplyMessageContext;
 using webkit::ppapi::PluginDelegate;
diff --git a/content/renderer/pepper/pepper_file_system_host.cc b/content/renderer/pepper/pepper_file_system_host.cc
index d710a7a..3e60dfe 100644
--- a/content/renderer/pepper/pepper_file_system_host.cc
+++ b/content/renderer/pepper/pepper_file_system_host.cc
@@ -10,6 +10,7 @@
 #include "content/child/fileapi/file_system_dispatcher.h"
 #include "content/public/renderer/render_view.h"
 #include "content/public/renderer/renderer_ppapi_host.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
 #include "ppapi/c/pp_errors.h"
 #include "ppapi/host/dispatch_host_message.h"
 #include "ppapi/host/ppapi_host.h"
@@ -21,7 +22,6 @@
 #include "third_party/WebKit/public/web/WebPluginContainer.h"
 #include "third_party/WebKit/public/web/WebView.h"
 #include "webkit/common/fileapi/file_system_util.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
 
 namespace content {
 
diff --git a/content/renderer/pepper/pepper_graphics_2d_host.cc b/content/renderer/pepper/pepper_graphics_2d_host.cc
index 528dacac..ca4d524 100644
--- a/content/renderer/pepper/pepper_graphics_2d_host.cc
+++ b/content/renderer/pepper/pepper_graphics_2d_host.cc
@@ -9,6 +9,11 @@
 #include "base/logging.h"
 #include "base/message_loop/message_loop.h"
 #include "content/public/renderer/renderer_ppapi_host.h"
+#include "content/renderer/pepper/common.h"
+#include "content/renderer/pepper/gfx_conversion.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
+#include "content/renderer/pepper/ppb_image_data_impl.h"
+#include "content/renderer/pepper/resource_helper.h"
 #include "ppapi/c/pp_bool.h"
 #include "ppapi/c/pp_errors.h"
 #include "ppapi/c/pp_rect.h"
@@ -28,11 +33,6 @@
 #include "ui/gfx/scoped_ns_graphics_context_save_gstate_mac.h"
 #include "ui/gfx/size_conversions.h"
 #include "ui/gfx/skia_util.h"
-#include "webkit/plugins/ppapi/common.h"
-#include "webkit/plugins/ppapi/gfx_conversion.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
-#include "webkit/plugins/ppapi/ppb_image_data_impl.h"
-#include "webkit/plugins/ppapi/resource_helper.h"
 
 #if defined(OS_MACOSX)
 #include "base/mac/mac_util.h"
diff --git a/content/renderer/pepper/pepper_graphics_2d_host.h b/content/renderer/pepper/pepper_graphics_2d_host.h
index 9ce1fda..a582f2e 100644
--- a/content/renderer/pepper/pepper_graphics_2d_host.h
+++ b/content/renderer/pepper/pepper_graphics_2d_host.h
@@ -11,11 +11,11 @@
 #include "base/compiler_specific.h"
 #include "base/memory/weak_ptr.h"
 #include "content/common/content_export.h"
+#include "content/renderer/pepper/plugin_delegate.h"
 #include "ppapi/c/ppb_graphics_2d.h"
 #include "ppapi/host/host_message_context.h"
 #include "ppapi/host/resource_host.h"
 #include "third_party/WebKit/public/platform/WebCanvas.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
 
 namespace gfx {
 class Point;
diff --git a/content/renderer/pepper/pepper_in_process_resource_creation.cc b/content/renderer/pepper/pepper_in_process_resource_creation.cc
index 7cd2c70..f9713c4d 100644
--- a/content/renderer/pepper/pepper_in_process_resource_creation.cc
+++ b/content/renderer/pepper/pepper_in_process_resource_creation.cc
@@ -9,6 +9,7 @@
 #include "base/memory/weak_ptr.h"
 #include "base/message_loop/message_loop.h"
 #include "content/renderer/pepper/pepper_in_process_router.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
 #include "content/renderer/pepper/renderer_ppapi_host_impl.h"
 #include "content/renderer/render_view_impl.h"
 #include "ipc/ipc_message.h"
@@ -30,7 +31,6 @@
 #include "ppapi/shared_impl/ppapi_permissions.h"
 #include "ppapi/shared_impl/resource_tracker.h"
 #include "ppapi/shared_impl/var.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
 
 // Note that the code in the creation functions in this file should generally
 // be the same as that in ppapi/proxy/resource_creation_proxy.cc. See
diff --git a/content/renderer/pepper/pepper_in_process_resource_creation.h b/content/renderer/pepper/pepper_in_process_resource_creation.h
index 2f36aa95..72a5943 100644
--- a/content/renderer/pepper/pepper_in_process_resource_creation.h
+++ b/content/renderer/pepper/pepper_in_process_resource_creation.h
@@ -7,8 +7,8 @@
 
 #include "base/basictypes.h"
 #include "base/memory/scoped_ptr.h"
+#include "content/renderer/pepper/resource_creation_impl.h"
 #include "ppapi/proxy/connection.h"
-#include "webkit/plugins/ppapi/resource_creation_impl.h"
 
 namespace content {
 
@@ -20,7 +20,7 @@
 // (See pepper_in_process_router.h for more information.)
 //
 // This is a bit confusing. The "old-style" resources live in
-// webkit/plugins/ppapi and are created by the ResourceCreationImpl in that
+// content/renderer/pepper and are created by the ResourceCreationImpl in that
 // directory. The "new-style" IPC-only resources are in ppapi/proxy and are
 // created by the RessourceCreationProxy in that directory.
 //
diff --git a/content/renderer/pepper/pepper_platform_audio_input_impl.h b/content/renderer/pepper/pepper_platform_audio_input_impl.h
index 975d9214..c5b3fb0 100644
--- a/content/renderer/pepper/pepper_platform_audio_input_impl.h
+++ b/content/renderer/pepper/pepper_platform_audio_input_impl.h
@@ -12,9 +12,9 @@
 #include "base/memory/ref_counted.h"
 #include "base/memory/scoped_ptr.h"
 #include "base/memory/weak_ptr.h"
+#include "content/renderer/pepper/plugin_delegate.h"
 #include "media/audio/audio_input_ipc.h"
 #include "media/audio/audio_parameters.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
 
 class GURL;
 
diff --git a/content/renderer/pepper/pepper_platform_audio_output_impl.h b/content/renderer/pepper/pepper_platform_audio_output_impl.h
index 4382bf2..d13aa62 100644
--- a/content/renderer/pepper/pepper_platform_audio_output_impl.h
+++ b/content/renderer/pepper/pepper_platform_audio_output_impl.h
@@ -8,8 +8,8 @@
 #include "base/basictypes.h"
 #include "base/memory/ref_counted.h"
 #include "base/memory/scoped_ptr.h"
+#include "content/renderer/pepper/plugin_delegate.h"
 #include "media/audio/audio_output_ipc.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
 
 namespace media {
 class AudioParameters;
diff --git a/content/renderer/pepper/pepper_platform_context_3d_impl.h b/content/renderer/pepper/pepper_platform_context_3d_impl.h
index 88496c2..c975453 100644
--- a/content/renderer/pepper/pepper_platform_context_3d_impl.h
+++ b/content/renderer/pepper/pepper_platform_context_3d_impl.h
@@ -10,8 +10,8 @@
 #include "base/memory/ref_counted.h"
 #include "base/memory/weak_ptr.h"
 #include "content/common/gpu/client/webgraphicscontext3d_command_buffer_impl.h"
+#include "content/renderer/pepper/plugin_delegate.h"
 #include "gpu/command_buffer/common/mailbox.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
 
 #ifdef ENABLE_GPU
 
diff --git a/content/renderer/pepper/pepper_platform_image_2d_impl.h b/content/renderer/pepper/pepper_platform_image_2d_impl.h
index 099a428..5ad75e10 100644
--- a/content/renderer/pepper/pepper_platform_image_2d_impl.h
+++ b/content/renderer/pepper/pepper_platform_image_2d_impl.h
@@ -6,7 +6,7 @@
 #define CONTENT_RENDERER_PEPPER_PEPPER_PLATFORM_IMAGE_2D_IMPL_H_
 
 #include "base/basictypes.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
+#include "content/renderer/pepper/plugin_delegate.h"
 
 namespace content {
 
diff --git a/content/renderer/pepper/pepper_platform_video_capture_impl.h b/content/renderer/pepper/pepper_platform_video_capture_impl.h
index 4e9c13b0..58101e53 100644
--- a/content/renderer/pepper/pepper_platform_video_capture_impl.h
+++ b/content/renderer/pepper/pepper_platform_video_capture_impl.h
@@ -11,9 +11,9 @@
 #include "base/compiler_specific.h"
 #include "base/memory/scoped_ptr.h"
 #include "base/memory/weak_ptr.h"
+#include "content/renderer/pepper/plugin_delegate.h"
 #include "media/video/capture/video_capture.h"
 #include "media/video/capture/video_capture_types.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
 
 class GURL;
 
diff --git a/content/renderer/pepper/pepper_plugin_delegate_impl.cc b/content/renderer/pepper/pepper_plugin_delegate_impl.cc
index 69dee4e6..7beb399 100644
--- a/content/renderer/pepper/pepper_plugin_delegate_impl.cc
+++ b/content/renderer/pepper/pepper_plugin_delegate_impl.cc
@@ -57,7 +57,13 @@
 #include "content/renderer/pepper/pepper_platform_video_capture_impl.h"
 #include "content/renderer/pepper/pepper_proxy_channel_delegate_impl.h"
 #include "content/renderer/pepper/pepper_url_loader_host.h"
+#include "content/renderer/pepper/plugin_module.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
+#include "content/renderer/pepper/ppapi_webplugin_impl.h"
+#include "content/renderer/pepper/ppb_tcp_server_socket_private_impl.h"
+#include "content/renderer/pepper/ppb_tcp_socket_private_impl.h"
 #include "content/renderer/pepper/renderer_ppapi_host_impl.h"
+#include "content/renderer/pepper/resource_helper.h"
 #include "content/renderer/pepper/url_response_info_util.h"
 #include "content/renderer/render_thread_impl.h"
 #include "content/renderer/render_view_impl.h"
@@ -95,12 +101,6 @@
 #include "third_party/WebKit/public/web/WebView.h"
 #include "ui/gfx/size.h"
 #include "url/gurl.h"
-#include "webkit/plugins/ppapi/plugin_module.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
-#include "webkit/plugins/ppapi/ppapi_webplugin_impl.h"
-#include "webkit/plugins/ppapi/ppb_tcp_server_socket_private_impl.h"
-#include "webkit/plugins/ppapi/ppb_tcp_socket_private_impl.h"
-#include "webkit/plugins/ppapi/resource_helper.h"
 
 using WebKit::WebView;
 using WebKit::WebFrame;
@@ -413,7 +413,6 @@
   // module's destructor will remove itself.
   module = new webkit::ppapi::PluginModule(
       info->name, path,
-      PepperPluginRegistry::GetInstance(),
       permissions);
   PepperPluginRegistry::GetInstance()->AddLiveModule(path, module.get());
 
diff --git a/content/renderer/pepper/pepper_plugin_delegate_impl.h b/content/renderer/pepper/pepper_plugin_delegate_impl.h
index 2e311d5..5a0f977 100644
--- a/content/renderer/pepper/pepper_plugin_delegate_impl.h
+++ b/content/renderer/pepper/pepper_plugin_delegate_impl.h
@@ -19,12 +19,12 @@
 #include "content/public/renderer/render_view_observer.h"
 #include "content/renderer/mouse_lock_dispatcher.h"
 #include "content/renderer/pepper/pepper_browser_connection.h"
+#include "content/renderer/pepper/plugin_delegate.h"
 #include "content/renderer/render_view_pepper_helper.h"
 #include "ppapi/c/pp_file_info.h"
 #include "ppapi/shared_impl/private/ppb_tcp_server_socket_shared.h"
 #include "ppapi/shared_impl/private/tcp_socket_private_impl.h"
 #include "ui/base/ime/text_input_type.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
 
 namespace base {
 class FilePath;
diff --git a/content/renderer/pepper/pepper_url_loader_host.cc b/content/renderer/pepper/pepper_url_loader_host.cc
index 6863606..3087ebc 100644
--- a/content/renderer/pepper/pepper_url_loader_host.cc
+++ b/content/renderer/pepper/pepper_url_loader_host.cc
@@ -4,7 +4,9 @@
 
 #include "content/renderer/pepper/pepper_url_loader_host.h"
 
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
 #include "content/renderer/pepper/renderer_ppapi_host_impl.h"
+#include "content/renderer/pepper/url_request_info_util.h"
 #include "content/renderer/pepper/url_response_info_util.h"
 #include "net/base/net_errors.h"
 #include "ppapi/c/pp_errors.h"
@@ -24,8 +26,6 @@
 #include "third_party/WebKit/public/web/WebPluginContainer.h"
 #include "third_party/WebKit/public/web/WebSecurityOrigin.h"
 #include "third_party/WebKit/public/web/WebURLLoaderOptions.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
-#include "webkit/plugins/ppapi/url_request_info_util.h"
 
 using WebKit::WebFrame;
 using WebKit::WebString;
diff --git a/content/renderer/pepper/pepper_url_request_unittest.cc b/content/renderer/pepper/pepper_url_request_unittest.cc
index a242cee..08cae5a 100644
--- a/content/renderer/pepper/pepper_url_request_unittest.cc
+++ b/content/renderer/pepper/pepper_url_request_unittest.cc
@@ -4,6 +4,7 @@
 
 #include "base/compiler_specific.h"
 #include "content/public/test/render_view_test.h"
+#include "content/renderer/pepper/url_request_info_util.h"
 #include "ppapi/proxy/connection.h"
 #include "ppapi/proxy/url_request_info_resource.h"
 #include "ppapi/shared_impl/test_globals.h"
@@ -16,7 +17,6 @@
 #include "third_party/WebKit/public/web/WebView.h"
 #include "webkit/common/user_agent/user_agent.h"
 #include "webkit/common/user_agent/user_agent_util.h"
-#include "webkit/plugins/ppapi/url_request_info_util.h"
 
 // This test is a end-to-end test from the resource to the WebKit request
 // object. The actual resource implementation is so simple, it makes sense to
@@ -51,9 +51,6 @@
 using ppapi::proxy::URLRequestInfoResource;
 using ppapi::URLRequestInfoData;
 
-// TODO(brettw) move to content namespace when url_request_info_util.h is moved
-// to this directory. This file used to be in webkit/plugins/ppapi and had to
-// be moved in advance of the rest of the files to make things compile.
 namespace webkit {
 namespace ppapi {
 
diff --git a/content/renderer/pepper/pepper_video_capture_host.cc b/content/renderer/pepper/pepper_video_capture_host.cc
index 6c6b93382..cef1e880 100644
--- a/content/renderer/pepper/pepper_video_capture_host.cc
+++ b/content/renderer/pepper/pepper_video_capture_host.cc
@@ -4,6 +4,8 @@
 
 #include "content/renderer/pepper/pepper_video_capture_host.h"
 
+#include "content/renderer/pepper/host_globals.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
 #include "content/renderer/pepper/renderer_ppapi_host_impl.h"
 #include "ppapi/host/dispatch_host_message.h"
 #include "ppapi/host/ppapi_host.h"
@@ -15,8 +17,6 @@
 #include "third_party/WebKit/public/web/WebDocument.h"
 #include "third_party/WebKit/public/web/WebElement.h"
 #include "third_party/WebKit/public/web/WebPluginContainer.h"
-#include "webkit/plugins/ppapi/host_globals.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
 
 using ppapi::HostResource;
 using ppapi::TrackedCallback;
diff --git a/content/renderer/pepper/pepper_video_capture_host.h b/content/renderer/pepper/pepper_video_capture_host.h
index 9d0dd4e..9fdc299 100644
--- a/content/renderer/pepper/pepper_video_capture_host.h
+++ b/content/renderer/pepper/pepper_video_capture_host.h
@@ -9,13 +9,13 @@
 #include "base/memory/ref_counted.h"
 #include "content/public/renderer/renderer_ppapi_host.h"
 #include "content/renderer/pepper/pepper_device_enumeration_host_helper.h"
+#include "content/renderer/pepper/plugin_delegate.h"
+#include "content/renderer/pepper/ppb_buffer_impl.h"
 #include "media/video/capture/video_capture.h"
 #include "media/video/capture/video_capture_types.h"
 #include "ppapi/c/dev/ppp_video_capture_dev.h"
 #include "ppapi/host/host_message_context.h"
 #include "ppapi/host/resource_host.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
-#include "webkit/plugins/ppapi/ppb_buffer_impl.h"
 
 namespace content {
 class RendererPpapiHostImpl;
diff --git a/content/renderer/pepper/pepper_video_destination_host.cc b/content/renderer/pepper/pepper_video_destination_host.cc
index 67234d5..2ab0657 100644
--- a/content/renderer/pepper/pepper_video_destination_host.cc
+++ b/content/renderer/pepper/pepper_video_destination_host.cc
@@ -6,6 +6,7 @@
 
 #include "base/time/time.h"
 #include "content/public/renderer/renderer_ppapi_host.h"
+#include "content/renderer/pepper/ppb_image_data_impl.h"
 #include "ppapi/c/pp_errors.h"
 #include "ppapi/host/dispatch_host_message.h"
 #include "ppapi/host/host_message_context.h"
@@ -13,7 +14,6 @@
 #include "ppapi/proxy/ppapi_messages.h"
 #include "ppapi/thunk/enter.h"
 #include "ppapi/thunk/ppb_image_data_api.h"
-#include "webkit/plugins/ppapi/ppb_image_data_impl.h"
 
 using ppapi::host::HostMessageContext;
 using ppapi::host::ReplyMessageContext;
diff --git a/content/renderer/pepper/pepper_video_source_host.cc b/content/renderer/pepper/pepper_video_source_host.cc
index 81831131..165c5c04 100644
--- a/content/renderer/pepper/pepper_video_source_host.cc
+++ b/content/renderer/pepper/pepper_video_source_host.cc
@@ -7,6 +7,7 @@
 #include "base/bind.h"
 #include "base/safe_numerics.h"
 #include "content/public/renderer/renderer_ppapi_host.h"
+#include "content/renderer/pepper/ppb_image_data_impl.h"
 #include "content/renderer/render_thread_impl.h"
 #include "ppapi/c/pp_errors.h"
 #include "ppapi/host/dispatch_host_message.h"
@@ -19,7 +20,6 @@
 #include "third_party/libjingle/source/talk/media/base/videocommon.h"
 #include "third_party/libjingle/source/talk/media/base/videoframe.h"
 #include "third_party/skia/include/core/SkBitmap.h"
-#include "webkit/plugins/ppapi/ppb_image_data_impl.h"
 
 using ppapi::host::HostMessageContext;
 using ppapi::host::ReplyMessageContext;
diff --git a/webkit/plugins/ppapi/plugin_delegate.h b/content/renderer/pepper/plugin_delegate.h
similarity index 95%
rename from webkit/plugins/ppapi/plugin_delegate.h
rename to content/renderer/pepper/plugin_delegate.h
index 92d993a9..e5f21187 100644
--- a/webkit/plugins/ppapi/plugin_delegate.h
+++ b/content/renderer/pepper/plugin_delegate.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_PLUGIN_DELEGATE_H_
-#define WEBKIT_PLUGINS_PPAPI_PLUGIN_DELEGATE_H_
+#ifndef CONTENT_RENDERER_PEPPER_PLUGIN_DELEGATE_H_
+#define CONTENT_RENDERER_PEPPER_PLUGIN_DELEGATE_H_
 
 #include <string>
 #include <vector>
@@ -16,6 +16,7 @@
 #include "base/process.h"
 #include "base/sync_socket.h"
 #include "base/time/time.h"
+#include "content/common/content_export.h"
 #include "ipc/ipc_platform_file.h"
 #include "media/video/capture/video_capture.h"
 #include "media/video/video_decode_accelerator.h"
@@ -36,7 +37,6 @@
 #include "url/gurl.h"
 #include "webkit/common/fileapi/file_system_types.h"
 #include "webkit/common/quota/quota_types.h"
-#include "webkit/plugins/webkit_plugins_export.h"
 
 class GURL;
 class SkBitmap;
@@ -122,26 +122,6 @@
 // PPAPI plugins.
 class PluginDelegate {
  public:
-  // This interface is used for the PluginModule to tell the code in charge of
-  // re-using modules which modules currently exist.
-  //
-  // It is different than the other interfaces, which are scoped to the
-  // lifetime of the plugin instance. The implementor of this interface must
-  // outlive all plugin modules, and is in practice a singleton
-  // (PepperPluginRegistry). This requirement means we can't do the obvious
-  // thing and just have a PluginDelegate call for this purpose (when the
-  // module is being deleted, we know there are no more PluginInstances that
-  // have PluginDelegates).
-  class ModuleLifetime {
-   public:
-    // Notification that the given plugin object is no longer usable. It either
-    // indicates the module was deleted, or that it has crashed.
-    //
-    // This can be called from the module's destructor, so you should not
-    // dereference the given pointer.
-    virtual void PluginModuleDead(PluginModule* dead_module) = 0;
-  };
-
   // This class is implemented by the PluginDelegate implementation and is
   // designed to manage the lifetime and communication with the proxy's
   // HostDispatcher for out-of-process PPAPI plugins.
@@ -193,7 +173,7 @@
     virtual TransportDIB* GetTransportDIB() const = 0;
   };
 
-  class WEBKIT_PLUGINS_EXPORT PlatformGraphics2D {
+  class CONTENT_EXPORT PlatformGraphics2D {
    public:
     virtual ~PlatformGraphics2D() {}
 
@@ -709,4 +689,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_PLUGIN_DELEGATE_H_
+#endif  // CONTENT_RENDERER_PEPPER_PLUGIN_DELEGATE_H_
diff --git a/webkit/plugins/ppapi/plugin_module.cc b/content/renderer/pepper/plugin_module.cc
similarity index 91%
rename from webkit/plugins/ppapi/plugin_module.cc
rename to content/renderer/pepper/plugin_module.cc
index 59fb1b1..820ba56 100644
--- a/webkit/plugins/ppapi/plugin_module.cc
+++ b/content/renderer/pepper/plugin_module.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/plugin_module.h"
+#include "content/renderer/pepper/plugin_module.h"
 
 #include <set>
 
@@ -13,6 +13,18 @@
 #include "base/message_loop/message_loop.h"
 #include "base/message_loop/message_loop_proxy.h"
 #include "base/time/time.h"
+#include "content/common/pepper_plugin_registry.h"
+#include "content/renderer/pepper/common.h"
+#include "content/renderer/pepper/host_globals.h"
+#include "content/renderer/pepper/ppapi_interface_factory.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
+#include "content/renderer/pepper/ppb_gpu_blacklist_private_impl.h"
+#include "content/renderer/pepper/ppb_image_data_impl.h"
+#include "content/renderer/pepper/ppb_proxy_impl.h"
+#include "content/renderer/pepper/ppb_scrollbar_impl.h"
+#include "content/renderer/pepper/ppb_uma_private_impl.h"
+#include "content/renderer/pepper/ppb_var_deprecated_impl.h"
+#include "content/renderer/pepper/ppb_video_decoder_impl.h"
 #include "ppapi/c/dev/ppb_audio_input_dev.h"
 #include "ppapi/c/dev/ppb_buffer_dev.h"
 #include "ppapi/c/dev/ppb_char_set_dev.h"
@@ -120,17 +132,6 @@
 #include "ppapi/thunk/ppb_graphics_2d_api.h"
 #include "ppapi/thunk/thunk.h"
 #include "webkit/plugins/plugin_switches.h"
-#include "webkit/plugins/ppapi/common.h"
-#include "webkit/plugins/ppapi/host_globals.h"
-#include "webkit/plugins/ppapi/ppapi_interface_factory.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
-#include "webkit/plugins/ppapi/ppb_gpu_blacklist_private_impl.h"
-#include "webkit/plugins/ppapi/ppb_image_data_impl.h"
-#include "webkit/plugins/ppapi/ppb_proxy_impl.h"
-#include "webkit/plugins/ppapi/ppb_scrollbar_impl.h"
-#include "webkit/plugins/ppapi/ppb_uma_private_impl.h"
-#include "webkit/plugins/ppapi/ppb_var_deprecated_impl.h"
-#include "webkit/plugins/ppapi/ppb_video_decoder_impl.h"
 
 using ppapi::InputEventData;
 using ppapi::PpapiGlobals;
@@ -340,10 +341,11 @@
 
 // Gets the PPAPI entry points from the given library and places them into the
 // given structure. Returns true on success.
-bool LoadEntryPointsFromLibrary(const base::NativeLibrary& library,
-                                PluginModule::EntryPoints* entry_points) {
+bool LoadEntryPointsFromLibrary(
+    const base::NativeLibrary& library,
+    content::PepperPluginInfo::EntryPoints* entry_points) {
   entry_points->get_interface =
-      reinterpret_cast<PluginModule::GetInterfaceFunc>(
+      reinterpret_cast<content::PepperPluginInfo::GetInterfaceFunc>(
           base::GetFunctionPointerFromNativeLibrary(library,
                                                     "PPP_GetInterface"));
   if (!entry_points->get_interface) {
@@ -352,7 +354,7 @@
   }
 
   entry_points->initialize_module =
-      reinterpret_cast<PluginModule::PPP_InitializeModuleFunc>(
+      reinterpret_cast<content::PepperPluginInfo::PPP_InitializeModuleFunc>(
           base::GetFunctionPointerFromNativeLibrary(library,
                                                     "PPP_InitializeModule"));
   if (!entry_points->initialize_module) {
@@ -363,7 +365,7 @@
   // It's okay for PPP_ShutdownModule to not be defined and shutdown_module to
   // be NULL.
   entry_points->shutdown_module =
-      reinterpret_cast<PluginModule::PPP_ShutdownModuleFunc>(
+      reinterpret_cast<content::PepperPluginInfo::PPP_ShutdownModuleFunc>(
           base::GetFunctionPointerFromNativeLibrary(library,
                                                     "PPP_ShutdownModule"));
 
@@ -372,20 +374,12 @@
 
 }  // namespace
 
-PluginModule::EntryPoints::EntryPoints()
-    : get_interface(NULL),
-      initialize_module(NULL),
-      shutdown_module(NULL) {
-}
-
 // PluginModule ----------------------------------------------------------------
 
 PluginModule::PluginModule(const std::string& name,
                            const base::FilePath& path,
-                           PluginDelegate::ModuleLifetime* lifetime_delegate,
                            const ::ppapi::PpapiPermissions& perms)
-    : lifetime_delegate_(lifetime_delegate),
-      callback_tracker_(new ::ppapi::CallbackTracker),
+    : callback_tracker_(new ::ppapi::CallbackTracker),
       is_in_destructor_(false),
       is_crashed_(false),
       broker_(NULL),
@@ -429,10 +423,10 @@
 
   // Notifications that we've been deleted should be last.
   HostGlobals::Get()->ModuleDeleted(pp_module_);
-  if (!is_crashed_ && lifetime_delegate_) {
+  if (!is_crashed_) {
     // When the plugin crashes, we immediately tell the lifetime delegate that
     // we're gone, so we don't want to tell it again.
-    lifetime_delegate_->PluginModuleDead(this);
+    content::PepperPluginRegistry::GetInstance()->PluginModuleDead(this);
   }
 
   // Don't add stuff here, the two notifications that the module object has
@@ -449,7 +443,8 @@
   return embedder_state_.get();
 }
 
-bool PluginModule::InitAsInternalPlugin(const EntryPoints& entry_points) {
+bool PluginModule::InitAsInternalPlugin(
+    const content::PepperPluginInfo::EntryPoints& entry_points) {
   if (InitializeModule(entry_points)) {
     entry_points_ = entry_points;
     return true;
@@ -462,7 +457,7 @@
   if (!library)
     return false;
 
-  EntryPoints entry_points;
+  content::PepperPluginInfo::EntryPoints entry_points;
 
   if (!LoadEntryPointsFromLibrary(library, &entry_points) ||
       !InitializeModule(entry_points)) {
@@ -487,7 +482,6 @@
   scoped_refptr<PluginModule> external_plugin_module(
       new PluginModule(name_,
                        path_,
-                       NULL,  // no lifetime_delegate
                        permissions_));
   return external_plugin_module;
 }
@@ -528,7 +522,8 @@
 }
 
 // static
-PluginModule::GetInterfaceFunc PluginModule::GetLocalGetInterfaceFunc() {
+content::PepperPluginInfo::GetInterfaceFunc
+    PluginModule::GetLocalGetInterfaceFunc() {
   return &GetInterface;
 }
 
@@ -593,8 +588,7 @@
        i != instances_.end(); ++i)
     (*i)->InstanceCrashed();
 
-  if (lifetime_delegate_)
-    lifetime_delegate_->PluginModuleDead(this);
+  content::PepperPluginRegistry::GetInstance()->PluginModuleDead(this);
 }
 
 void PluginModule::SetReserveInstanceIDCallback(
@@ -624,7 +618,8 @@
   host_globals = NULL;
 }
 
-bool PluginModule::InitializeModule(const EntryPoints& entry_points) {
+bool PluginModule::InitializeModule(
+    const content::PepperPluginInfo::EntryPoints& entry_points) {
   DCHECK(!out_of_process_proxy_.get()) << "Don't call for proxied modules.";
   DCHECK(entry_points.initialize_module != NULL);
   int retval = entry_points.initialize_module(pp_module(), &GetInterface);
diff --git a/webkit/plugins/ppapi/plugin_module.h b/content/renderer/pepper/plugin_module.h
similarity index 88%
rename from webkit/plugins/ppapi/plugin_module.h
rename to content/renderer/pepper/plugin_module.h
index 5d78761f..c4f3527 100644
--- a/webkit/plugins/ppapi/plugin_module.h
+++ b/content/renderer/pepper/plugin_module.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_PLUGIN_MODULE_H_
-#define WEBKIT_PLUGINS_PPAPI_PLUGIN_MODULE_H_
+#ifndef CONTENT_RENDERER_PEPPER_PLUGIN_MODULE_H_
+#define CONTENT_RENDERER_PEPPER_PLUGIN_MODULE_H_
 
 #include <map>
 #include <set>
@@ -16,15 +16,14 @@
 #include "base/memory/weak_ptr.h"
 #include "base/native_library.h"
 #include "base/process.h"
+#include "content/common/content_export.h"
+#include "content/public/common/pepper_plugin_info.h"
+#include "content/renderer/pepper/plugin_delegate.h"
 #include "ppapi/c/pp_bool.h"
 #include "ppapi/c/pp_instance.h"
-#include "ppapi/c/pp_module.h"
-#include "ppapi/c/ppb.h"
 #include "ppapi/c/ppb_core.h"
 #include "ppapi/c/private/ppb_instance_private.h"
 #include "ppapi/shared_impl/ppapi_permissions.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
-#include "webkit/plugins/webkit_plugins_export.h"
 
 typedef void* NPIdentifier;
 
@@ -56,23 +55,10 @@
 //
 // Note: to get from a PP_Instance to a PluginInstance*, use the
 // ResourceTracker.
-class WEBKIT_PLUGINS_EXPORT PluginModule :
+class CONTENT_EXPORT PluginModule :
     public base::RefCounted<PluginModule>,
     public base::SupportsWeakPtr<PluginModule> {
  public:
-  typedef const void* (*GetInterfaceFunc)(const char*);
-  typedef int (*PPP_InitializeModuleFunc)(PP_Module, PPB_GetInterface);
-  typedef void (*PPP_ShutdownModuleFunc)();
-
-  struct EntryPoints {
-    // This structure is POD, with the constructor initializing to NULL.
-    WEBKIT_PLUGINS_EXPORT EntryPoints();
-
-    GetInterfaceFunc get_interface;
-    PPP_InitializeModuleFunc initialize_module;
-    PPP_ShutdownModuleFunc shutdown_module;  // Optional, may be NULL.
-  };
-
   // Allows the embedder to associate a class with this module. This is opaque
   // from the PluginModule's perspective (see Set/GetEmbedderState below) but
   // the module is in charge of deleting the class.
@@ -91,11 +77,8 @@
   // tracks which modules are alive.
   PluginModule(const std::string& name,
                const base::FilePath& path,
-               PluginDelegate::ModuleLifetime* lifetime_delegate,
                const ::ppapi::PpapiPermissions& perms);
 
-  ~PluginModule();
-
   // Sets the given class as being associated with this module. It will be
   // deleted when the module is destroyed. You can only set it once, subsequent
   // sets will assert.
@@ -107,7 +90,8 @@
   // Initializes this module as an internal plugin with the given entrypoints.
   // This is used for "plugins" compiled into Chrome. Returns true on success.
   // False means that the plugin can not be used.
-  bool InitAsInternalPlugin(const EntryPoints& entry_points);
+  bool InitAsInternalPlugin(
+      const content::PepperPluginInfo::EntryPoints& entry_points);
 
   // Initializes this module using the given library path as the plugin.
   // Returns true on success. False means that the plugin can not be used.
@@ -146,7 +130,7 @@
 
   // Returns a pointer to the local GetInterface function for retrieving
   // PPB interfaces.
-  static GetInterfaceFunc GetLocalGetInterfaceFunc();
+  static content::PepperPluginInfo::GetInterfaceFunc GetLocalGetInterfaceFunc();
 
   // Returns whether an interface is supported. This method can be called from
   // the browser process and used for interface matching before plugin
@@ -218,13 +202,13 @@
   static void ResetHostGlobalsForTest();
 
  private:
+  friend class base::RefCounted<PluginModule>;
+  ~PluginModule();
   // Calls the InitializeModule entrypoint. The entrypoint must have been
   // set and the plugin must not be out of process (we don't maintain
   // entrypoints in that case).
-  bool InitializeModule(const EntryPoints& entry_points);
-
-  // Note: This may be null.
-  PluginDelegate::ModuleLifetime* lifetime_delegate_;
+  bool InitializeModule(
+      const content::PepperPluginInfo::EntryPoints& entry_points);
 
   // See EmbedderState above.
   scoped_ptr<EmbedderState> embedder_state_;
@@ -260,7 +244,7 @@
   // Contains pointers to the entry points of the actual plugin implementation.
   // These will be NULL for out-of-process plugins, which is indicated by the
   // presence of the out_of_process_proxy_ value.
-  EntryPoints entry_points_;
+  content::PepperPluginInfo::EntryPoints entry_points_;
 
   // The name and file location of the module.
   const std::string name_;
@@ -280,4 +264,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_PLUGIN_MODULE_H_
+#endif  // CONTENT_RENDERER_PEPPER_PLUGIN_MODULE_H_
diff --git a/webkit/plugins/ppapi/plugin_object.cc b/content/renderer/pepper/plugin_object.cc
similarity index 97%
rename from webkit/plugins/ppapi/plugin_object.cc
rename to content/renderer/pepper/plugin_object.cc
index 7351bd0..9955d0cf8 100644
--- a/webkit/plugins/ppapi/plugin_object.cc
+++ b/content/renderer/pepper/plugin_object.cc
@@ -2,13 +2,16 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/plugin_object.h"
+#include "content/renderer/pepper/plugin_object.h"
 
 #include "base/logging.h"
 #include "base/memory/ref_counted.h"
 #include "base/memory/scoped_ptr.h"
 #include "base/strings/string_number_conversions.h"
 #include "base/strings/string_util.h"
+#include "content/renderer/pepper/npapi_glue.h"
+#include "content/renderer/pepper/plugin_module.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
 #include "ppapi/c/dev/ppb_var_deprecated.h"
 #include "ppapi/c/dev/ppp_class_deprecated.h"
 #include "ppapi/c/pp_resource.h"
@@ -20,9 +23,6 @@
 #include "third_party/WebKit/public/web/WebBindings.h"
 #include "third_party/npapi/bindings/npapi.h"
 #include "third_party/npapi/bindings/npruntime.h"
-#include "webkit/plugins/ppapi/npapi_glue.h"
-#include "webkit/plugins/ppapi/plugin_module.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
 
 using ppapi::PpapiGlobals;
 using ppapi::StringVar;
diff --git a/webkit/plugins/ppapi/plugin_object.h b/content/renderer/pepper/plugin_object.h
similarity index 95%
rename from webkit/plugins/ppapi/plugin_object.h
rename to content/renderer/pepper/plugin_object.h
index dbeaab0..c222e5017 100644
--- a/webkit/plugins/ppapi/plugin_object.h
+++ b/content/renderer/pepper/plugin_object.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_PLUGIN_OBJECT_H_
-#define WEBKIT_PLUGINS_PPAPI_PLUGIN_OBJECT_H_
+#ifndef CONTENT_RENDERER_PEPPER_PLUGIN_OBJECT_H_
+#define CONTENT_RENDERER_PEPPER_PLUGIN_OBJECT_H_
 
 #include <string>
 
@@ -92,4 +92,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_PLUGIN_OBJECT_H_
+#endif  // CONTENT_RENDERER_PEPPER_PLUGIN_OBJECT_H_
diff --git a/webkit/plugins/ppapi/ppapi_interface_factory.cc b/content/renderer/pepper/ppapi_interface_factory.cc
similarity index 96%
rename from webkit/plugins/ppapi/ppapi_interface_factory.cc
rename to content/renderer/pepper/ppapi_interface_factory.cc
index 26df97ac0..acb6858 100644
--- a/webkit/plugins/ppapi/ppapi_interface_factory.cc
+++ b/content/renderer/pepper/ppapi_interface_factory.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/ppapi_interface_factory.h"
+#include "content/renderer/pepper/ppapi_interface_factory.h"
 
 #include <algorithm>
 
diff --git a/webkit/plugins/ppapi/ppapi_interface_factory.h b/content/renderer/pepper/ppapi_interface_factory.h
similarity index 74%
rename from webkit/plugins/ppapi/ppapi_interface_factory.h
rename to content/renderer/pepper/ppapi_interface_factory.h
index 1b574aa..6654f612 100644
--- a/webkit/plugins/ppapi/ppapi_interface_factory.h
+++ b/content/renderer/pepper/ppapi_interface_factory.h
@@ -2,15 +2,15 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_PLUGIN_INTERFACE_FACTORY_H_
-#define WEBKIT_PLUGINS_PPAPI_PLUGIN_INTERFACE_FACTORY_H_
+#ifndef CONTENT_RENDERER_PEPPER_PLUGIN_INTERFACE_FACTORY_H_
+#define CONTENT_RENDERER_PEPPER_PLUGIN_INTERFACE_FACTORY_H_
 
 #include <string>
 #include <vector>
 
 #include "base/basictypes.h"
 #include "base/lazy_instance.h"
-#include "webkit/plugins/webkit_plugins_export.h"
+#include "content/common/content_export.h"
 
 namespace webkit {
 namespace ppapi {
@@ -22,10 +22,10 @@
   typedef const void* (InterfaceFactory)(const std::string& interface_name);
 
   // Registers a custom PPAPI interface factory.
-  WEBKIT_PLUGINS_EXPORT void RegisterFactory(InterfaceFactory* factory);
+  CONTENT_EXPORT void RegisterFactory(InterfaceFactory* factory);
 
   // Unregisters the custom PPAPI interface factory passed in.
-  WEBKIT_PLUGINS_EXPORT void UnregisterFactory(InterfaceFactory* factory);
+  CONTENT_EXPORT void UnregisterFactory(InterfaceFactory* factory);
 
   // Returns a pointer to the interface identified by the name passed in.
   // Returns NULL if no factory handles this interface.
@@ -33,7 +33,7 @@
 
   // Returns a pointer to the global instance of the
   // PpapiInterfaceFactoryManager class.
-  WEBKIT_PLUGINS_EXPORT static PpapiInterfaceFactoryManager* GetInstance();
+  CONTENT_EXPORT static PpapiInterfaceFactoryManager* GetInstance();
 
  private:
   friend struct base::DefaultLazyInstanceTraits<PpapiInterfaceFactoryManager>;
@@ -52,5 +52,5 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_PLUGIN_INTERFACE_FACTORY_H_
+#endif  // CONTENT_RENDERER_PEPPER_PLUGIN_INTERFACE_FACTORY_H_
 
diff --git a/webkit/plugins/ppapi/ppapi_plugin_instance_impl.cc b/content/renderer/pepper/ppapi_plugin_instance_impl.cc
similarity index 98%
rename from webkit/plugins/ppapi/ppapi_plugin_instance_impl.cc
rename to content/renderer/pepper/ppapi_plugin_instance_impl.cc
index c128ade..229c31ed 100644
--- a/webkit/plugins/ppapi/ppapi_plugin_instance_impl.cc
+++ b/content/renderer/pepper/ppapi_plugin_instance_impl.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
 
 #include "base/bind.h"
 #include "base/callback_helpers.h"
@@ -16,6 +16,22 @@
 #include "base/strings/utf_string_conversions.h"
 #include "base/time/time.h"
 #include "cc/layers/texture_layer.h"
+#include "content/renderer/pepper/common.h"
+#include "content/renderer/pepper/content_decryptor_delegate.h"
+#include "content/renderer/pepper/event_conversion.h"
+#include "content/renderer/pepper/fullscreen_container.h"
+#include "content/renderer/pepper/gfx_conversion.h"
+#include "content/renderer/pepper/host_globals.h"
+#include "content/renderer/pepper/message_channel.h"
+#include "content/renderer/pepper/npapi_glue.h"
+#include "content/renderer/pepper/plugin_module.h"
+#include "content/renderer/pepper/plugin_object.h"
+#include "content/renderer/pepper/ppb_buffer_impl.h"
+#include "content/renderer/pepper/ppb_file_ref_impl.h"
+#include "content/renderer/pepper/ppb_graphics_3d_impl.h"
+#include "content/renderer/pepper/ppb_image_data_impl.h"
+#include "content/renderer/pepper/ppp_pdf.h"
+#include "content/renderer/pepper/url_request_info_util.h"
 #include "ppapi/c/dev/ppb_find_dev.h"
 #include "ppapi/c/dev/ppb_zoom_dev.h"
 #include "ppapi/c/dev/ppp_find_dev.h"
@@ -78,22 +94,6 @@
 #include "ui/gfx/scoped_ns_graphics_context_save_gstate_mac.h"
 #include "v8/include/v8.h"
 #include "webkit/plugins/plugin_constants.h"
-#include "webkit/plugins/ppapi/common.h"
-#include "webkit/plugins/ppapi/content_decryptor_delegate.h"
-#include "webkit/plugins/ppapi/event_conversion.h"
-#include "webkit/plugins/ppapi/fullscreen_container.h"
-#include "webkit/plugins/ppapi/gfx_conversion.h"
-#include "webkit/plugins/ppapi/host_globals.h"
-#include "webkit/plugins/ppapi/message_channel.h"
-#include "webkit/plugins/ppapi/npapi_glue.h"
-#include "webkit/plugins/ppapi/plugin_module.h"
-#include "webkit/plugins/ppapi/plugin_object.h"
-#include "webkit/plugins/ppapi/ppb_buffer_impl.h"
-#include "webkit/plugins/ppapi/ppb_file_ref_impl.h"
-#include "webkit/plugins/ppapi/ppb_graphics_3d_impl.h"
-#include "webkit/plugins/ppapi/ppb_image_data_impl.h"
-#include "webkit/plugins/ppapi/ppp_pdf.h"
-#include "webkit/plugins/ppapi/url_request_info_util.h"
 #include "webkit/plugins/sad_plugin.h"
 #include "webkit/renderer/compositor_bindings/web_layer_impl.h"
 
@@ -381,6 +381,9 @@
       delegate_(delegate) {
 }
 
+PluginInstanceImpl::GamepadImpl::~GamepadImpl() {
+}
+
 PPB_Gamepad_API* PluginInstanceImpl::GamepadImpl::AsPPB_Gamepad_API() {
   return this;
 }
diff --git a/webkit/plugins/ppapi/ppapi_plugin_instance_impl.h b/content/renderer/pepper/ppapi_plugin_instance_impl.h
similarity index 95%
rename from webkit/plugins/ppapi/ppapi_plugin_instance_impl.h
rename to content/renderer/pepper/ppapi_plugin_instance_impl.h
index e214d33..c5d22c4 100644
--- a/webkit/plugins/ppapi/ppapi_plugin_instance_impl.h
+++ b/content/renderer/pepper/ppapi_plugin_instance_impl.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_PPAPI_PLUGIN_INSTANCE_IMPL_H_
-#define WEBKIT_PLUGINS_PPAPI_PPAPI_PLUGIN_INSTANCE_IMPL_H_
+#ifndef CONTENT_RENDERER_PEPPER_PPAPI_PLUGIN_INSTANCE_IMPL_H_
+#define CONTENT_RENDERER_PEPPER_PPAPI_PLUGIN_INSTANCE_IMPL_H_
 
 #include <set>
 #include <string>
@@ -15,6 +15,10 @@
 #include "base/memory/weak_ptr.h"
 #include "base/strings/string16.h"
 #include "cc/layers/texture_layer_client.h"
+#include "content/common/content_export.h"
+#include "content/public/renderer/ppapi_plugin_instance.h"
+#include "content/renderer/pepper/plugin_delegate.h"
+#include "content/renderer/pepper/ppp_pdf.h"
 #include "ppapi/c/dev/pp_cursor_type_dev.h"
 #include "ppapi/c/dev/ppp_find_dev.h"
 #include "ppapi/c/dev/ppp_printing_dev.h"
@@ -50,10 +54,6 @@
 #include "ui/base/ime/text_input_type.h"
 #include "ui/gfx/rect.h"
 #include "url/gurl.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance.h"
-#include "webkit/plugins/ppapi/ppp_pdf.h"
-#include "webkit/plugins/webkit_plugins_export.h"
 
 struct PP_Point;
 struct _NPP;
@@ -109,24 +109,22 @@
 //
 // Note: to get from a PP_Instance to a PluginInstance*, use the
 // ResourceTracker.
-class WEBKIT_PLUGINS_EXPORT PluginInstanceImpl :
-    public base::RefCounted<PluginInstanceImpl>,
-    public base::SupportsWeakPtr<PluginInstanceImpl>,
-    public NON_EXPORTED_BASE(PluginInstance),
-    public ::ppapi::PPB_Instance_Shared {
+class CONTENT_EXPORT PluginInstanceImpl
+    : public base::RefCounted<PluginInstanceImpl>,
+      public base::SupportsWeakPtr<PluginInstanceImpl>,
+      public NON_EXPORTED_BASE(PluginInstance),
+      public ::ppapi::PPB_Instance_Shared {
  public:
   // Create and return a PluginInstanceImpl object which supports the most
   // recent version of PPP_Instance possible by querying the given
   // get_plugin_interface function. If the plugin does not support any valid
   // PPP_Instance interface, returns NULL.
-  static PluginInstanceImpl* Create(PluginDelegate* delegate,
-                                    content::RenderView* render_view,
-                                    PluginModule* module,
-                                    WebKit::WebPluginContainer* container,
-                                    const GURL& plugin_url);
-  // Delete should be called by the WebPlugin before this destructor.
-  virtual ~PluginInstanceImpl();
-
+  static PluginInstanceImpl* Create(
+      PluginDelegate* delegate,
+      content::RenderView* render_view,
+      PluginModule* module,
+      WebKit::WebPluginContainer* container,
+      const GURL& plugin_url);
   PluginDelegate* delegate() const { return delegate_; }
   PluginModule* module() const { return module_.get(); }
   MessageChannel& message_channel() { return *message_channel_; }
@@ -355,28 +353,28 @@
   ContentDecryptorDelegate* GetContentDecryptorDelegate();
 
   // webkit::ppapi::PluginInstance implementation
-  content::RenderView* GetRenderView();
-  virtual WebKit::WebPluginContainer* GetContainer();
-  virtual ::ppapi::VarTracker* GetVarTracker();
-  virtual const GURL& GetPluginURL();
-  virtual base::FilePath GetModulePath();
+  virtual content::RenderView* GetRenderView() OVERRIDE;
+  virtual WebKit::WebPluginContainer* GetContainer() OVERRIDE;
+  virtual ::ppapi::VarTracker* GetVarTracker() OVERRIDE;
+  virtual const GURL& GetPluginURL() OVERRIDE;
+  virtual base::FilePath GetModulePath() OVERRIDE;
   virtual PP_Resource CreateExternalFileReference(
-      const base::FilePath& external_file_path);
+      const base::FilePath& external_file_path) OVERRIDE;
   virtual PP_Resource CreateImage(gfx::ImageSkia* source_image,
-                                  float scale);
+                                  float scale) OVERRIDE;
   virtual PP_ExternalPluginResult SwitchToOutOfProcessProxy(
       const base::FilePath& file_path,
       ::ppapi::PpapiPermissions permissions,
       const IPC::ChannelHandle& channel_handle,
       base::ProcessId plugin_pid,
-      int plugin_child_id);
-  virtual void SetAlwaysOnTop(bool on_top);
-  virtual bool IsFullPagePlugin();
-  virtual void FlashSetFullscreen(bool fullscreen, bool delay_report);
-  virtual bool IsRectTopmost(const gfx::Rect& rect);
+      int plugin_child_id) OVERRIDE;
+  virtual void SetAlwaysOnTop(bool on_top) OVERRIDE;
+  virtual bool IsFullPagePlugin() OVERRIDE;
+  virtual void FlashSetFullscreen(bool fullscreen, bool delay_report) OVERRIDE;
+  virtual bool IsRectTopmost(const gfx::Rect& rect) OVERRIDE;
   virtual int32_t Navigate(const ::ppapi::URLRequestInfoData& request,
                            const char* target,
-                           bool from_user_action);
+                           bool from_user_action) OVERRIDE;
 
   // PPB_Instance_API implementation.
   virtual PP_Bool BindGraphics(PP_Instance instance,
@@ -510,8 +508,12 @@
   v8::Isolate* GetIsolate() const;
 
  private:
+  friend class base::RefCounted<PluginInstanceImpl>;
   friend class PpapiUnittest;
 
+  // Delete should be called by the WebPlugin before this destructor.
+  virtual ~PluginInstanceImpl();
+
   // Class to record document load notifications and play them back once the
   // real document loader becomes available. Used only by NaCl instances.
   class NaClDocumentLoader : public WebKit::WebURLLoaderClient {
@@ -548,6 +550,7 @@
     virtual void Sample(PP_Instance instance,
                         PP_GamepadsSampleData* data) OVERRIDE;
    private:
+    virtual ~GamepadImpl();
     PluginDelegate* delegate_;
   };
 
@@ -858,4 +861,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_PPAPI_PLUGIN_INSTANCE_IMPL_H_
+#endif  // CONTENT_RENDERER_PEPPER_PPAPI_PLUGIN_INSTANCE_IMPL_H_
diff --git a/webkit/plugins/ppapi/ppapi_plugin_instance_unittest.cc b/content/renderer/pepper/ppapi_plugin_instance_unittest.cc
similarity index 94%
rename from webkit/plugins/ppapi/ppapi_plugin_instance_unittest.cc
rename to content/renderer/pepper/ppapi_plugin_instance_unittest.cc
index 1d598720..ceaac04 100644
--- a/webkit/plugins/ppapi/ppapi_plugin_instance_unittest.cc
+++ b/content/renderer/pepper/ppapi_plugin_instance_unittest.cc
@@ -2,16 +2,16 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
 
 #include "base/basictypes.h"
 #include "base/memory/ref_counted.h"
+#include "content/renderer/pepper/plugin_delegate.h"
+#include "content/renderer/pepper/ppapi_unittest.h"
+#include "content/renderer/pepper/ppb_image_data_impl.h"
 #include "testing/gtest/include/gtest/gtest.h"
 #include "ui/gfx/rect.h"
 #include "ui/gfx/safe_integer_conversions.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
-#include "webkit/plugins/ppapi/ppapi_unittest.h"
-#include "webkit/plugins/ppapi/ppb_image_data_impl.h"
 
 namespace webkit {
 namespace ppapi {
diff --git a/webkit/plugins/ppapi/ppapi_unittest.cc b/content/renderer/pepper/ppapi_unittest.cc
similarity index 87%
rename from webkit/plugins/ppapi/ppapi_unittest.cc
rename to content/renderer/pepper/ppapi_unittest.cc
index dc269d22..e6edf946d 100644
--- a/webkit/plugins/ppapi/ppapi_unittest.cc
+++ b/content/renderer/pepper/ppapi_unittest.cc
@@ -2,19 +2,19 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/ppapi_unittest.h"
+#include "content/renderer/pepper/ppapi_unittest.h"
 
 #include "base/message_loop/message_loop.h"
+#include "content/renderer/pepper/gfx_conversion.h"
+#include "content/renderer/pepper/host_globals.h"
+#include "content/renderer/pepper/mock_plugin_delegate.h"
+#include "content/renderer/pepper/plugin_module.h"
+#include "content/renderer/pepper/ppapi_interface_factory.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
 #include "ppapi/c/pp_var.h"
 #include "ppapi/c/ppp_instance.h"
 #include "ppapi/shared_impl/ppapi_globals.h"
 #include "ppapi/shared_impl/ppapi_permissions.h"
-#include "webkit/plugins/ppapi/gfx_conversion.h"
-#include "webkit/plugins/ppapi/host_globals.h"
-#include "webkit/plugins/ppapi/mock_plugin_delegate.h"
-#include "webkit/plugins/ppapi/plugin_module.h"
-#include "webkit/plugins/ppapi/ppapi_interface_factory.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
 
 namespace webkit {
 namespace ppapi {
@@ -81,10 +81,10 @@
   delegate_.reset(NewPluginDelegate());
 
   // Initialize the mock module.
-  module_ = new PluginModule("Mock plugin", base::FilePath(), this,
+  module_ = new PluginModule("Mock plugin", base::FilePath(),
                              ::ppapi::PpapiPermissions());
   ::ppapi::PpapiGlobals::Get()->ResetMainThreadMessageLoopForTesting();
-  PluginModule::EntryPoints entry_points;
+  content::PepperPluginInfo::EntryPoints entry_points;
   entry_points.get_interface = &MockGetInterface;
   entry_points.initialize_module = &MockInitializeModule;
   ASSERT_TRUE(module_->InitAsInternalPlugin(entry_points));
@@ -123,10 +123,6 @@
   instance_->view_data_.clip_rect = instance_->view_data_.rect;
 }
 
-void PpapiUnittest::PluginModuleDead(PluginModule* /* dead_module */) {
-  // Nothing needed (this is necessary to make the module compile).
-}
-
 // Tests whether custom PPAPI interface factories are called when PPAPI
 // interfaces are requested.
 class PpapiCustomInterfaceFactoryTest : public PpapiUnittest {
diff --git a/webkit/plugins/ppapi/ppapi_unittest.h b/content/renderer/pepper/ppapi_unittest.h
similarity index 78%
rename from webkit/plugins/ppapi/ppapi_unittest.h
rename to content/renderer/pepper/ppapi_unittest.h
index 4f908da..e7fd8f2 100644
--- a/webkit/plugins/ppapi/ppapi_unittest.h
+++ b/content/renderer/pepper/ppapi_unittest.h
@@ -2,14 +2,14 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_PPAPI_UNITTEST_H_
-#define WEBKIT_PLUGINS_PPAPI_PPAPI_UNITTEST_H_
+#ifndef CONTENT_RENDERER_PEPPER_PPAPI_UNITTEST_H_
+#define CONTENT_RENDERER_PEPPER_PPAPI_UNITTEST_H_
 
 #include "base/basictypes.h"
 #include "base/memory/ref_counted.h"
 #include "base/memory/scoped_ptr.h"
+#include "content/renderer/pepper/plugin_delegate.h"
 #include "testing/gtest/include/gtest/gtest.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
 
 namespace base {
 class MessageLoop;
@@ -22,8 +22,7 @@
 class PluginInstanceImpl;
 class PluginModule;
 
-class PpapiUnittest : public testing::Test,
-                      public webkit::ppapi::PluginDelegate::ModuleLifetime {
+class PpapiUnittest : public testing::Test {
  public:
   PpapiUnittest();
   virtual ~PpapiUnittest();
@@ -57,13 +56,10 @@
 
   scoped_ptr<base::MessageLoop> message_loop_;
 
-  // ModuleLifetime implementation.
-  virtual void PluginModuleDead(PluginModule* dead_module);
-
   DISALLOW_COPY_AND_ASSIGN(PpapiUnittest);
 };
 
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_PPAPI_UNITTEST_H_
+#endif  // CONTENT_RENDERER_PEPPER_PPAPI_UNITTEST_H_
diff --git a/webkit/plugins/ppapi/ppapi_webplugin_impl.cc b/content/renderer/pepper/ppapi_webplugin_impl.cc
similarity index 96%
rename from webkit/plugins/ppapi/ppapi_webplugin_impl.cc
rename to content/renderer/pepper/ppapi_webplugin_impl.cc
index 2f67be1..a3bca36 100644
--- a/webkit/plugins/ppapi/ppapi_webplugin_impl.cc
+++ b/content/renderer/pepper/ppapi_webplugin_impl.cc
@@ -2,12 +2,16 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/ppapi_webplugin_impl.h"
+#include "content/renderer/pepper/ppapi_webplugin_impl.h"
 
 #include <cmath>
 
 #include "base/debug/crash_logging.h"
 #include "base/message_loop/message_loop.h"
+#include "content/renderer/pepper/message_channel.h"
+#include "content/renderer/pepper/npobject_var.h"
+#include "content/renderer/pepper/plugin_module.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
 #include "ppapi/shared_impl/ppapi_globals.h"
 #include "ppapi/shared_impl/var_tracker.h"
 #include "third_party/WebKit/public/platform/WebPoint.h"
@@ -24,10 +28,6 @@
 #include "third_party/WebKit/public/web/WebPrintScalingOption.h"
 #include "third_party/WebKit/public/web/WebView.h"
 #include "url/gurl.h"
-#include "webkit/plugins/ppapi/message_channel.h"
-#include "webkit/plugins/ppapi/npobject_var.h"
-#include "webkit/plugins/ppapi/plugin_module.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
 
 using ppapi::NPObjectVar;
 using WebKit::WebCanvas;
diff --git a/webkit/plugins/ppapi/ppapi_webplugin_impl.h b/content/renderer/pepper/ppapi_webplugin_impl.h
similarity index 87%
rename from webkit/plugins/ppapi/ppapi_webplugin_impl.h
rename to content/renderer/pepper/ppapi_webplugin_impl.h
index 2e9545d..ed26b75 100644
--- a/webkit/plugins/ppapi/ppapi_webplugin_impl.h
+++ b/content/renderer/pepper/ppapi_webplugin_impl.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_PPAPI_WEBPLUGIN_IMPL_H_
-#define WEBKIT_PLUGINS_PPAPI_PPAPI_WEBPLUGIN_IMPL_H_
+#ifndef CONTENT_RENDERER_PEPPER_PPAPI_WEBPLUGIN_IMPL_H_
+#define CONTENT_RENDERER_PEPPER_PPAPI_WEBPLUGIN_IMPL_H_
 
 #include <string>
 #include <vector>
@@ -14,7 +14,6 @@
 #include "ppapi/c/pp_var.h"
 #include "third_party/WebKit/public/web/WebPlugin.h"
 #include "ui/gfx/rect.h"
-#include "webkit/plugins/webkit_plugins_export.h"
 
 struct _NPP;
 
@@ -37,11 +36,10 @@
 
 class WebPluginImpl : public WebKit::WebPlugin {
  public:
-  WEBKIT_PLUGINS_EXPORT WebPluginImpl(
-      PluginModule* module,
-      const WebKit::WebPluginParams& params,
-      const base::WeakPtr<PluginDelegate>& plugin_delegate,
-      const base::WeakPtr<content::RenderView>& render_view);
+  WebPluginImpl(PluginModule* module,
+                const WebKit::WebPluginParams& params,
+                const base::WeakPtr<PluginDelegate>& plugin_delegate,
+                const base::WeakPtr<content::RenderView>& render_view);
 
   PluginInstanceImpl* instance() { return instance_.get(); }
 
@@ -96,7 +94,7 @@
  private:
   friend class base::DeleteHelper<WebPluginImpl>;
 
-  WEBKIT_PLUGINS_EXPORT virtual ~WebPluginImpl();
+  virtual ~WebPluginImpl();
   struct InitData;
 
   scoped_ptr<InitData> init_data_;  // Cleared upon successful initialization.
@@ -114,4 +112,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_PPAPI_WEBPLUGIN_IMPL_H_
+#endif  // CONTENT_RENDERER_PEPPER_PPAPI_WEBPLUGIN_IMPL_H_
diff --git a/webkit/plugins/ppapi/ppb_audio_impl.cc b/content/renderer/pepper/ppb_audio_impl.cc
similarity index 96%
rename from webkit/plugins/ppapi/ppb_audio_impl.cc
rename to content/renderer/pepper/ppb_audio_impl.cc
index 4bd4995..52638260 100644
--- a/webkit/plugins/ppapi/ppb_audio_impl.cc
+++ b/content/renderer/pepper/ppb_audio_impl.cc
@@ -2,9 +2,11 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/ppb_audio_impl.h"
+#include "content/renderer/pepper/ppb_audio_impl.h"
 
 #include "base/logging.h"
+#include "content/renderer/pepper/common.h"
+#include "content/renderer/pepper/resource_helper.h"
 #include "media/audio/audio_output_controller.h"
 #include "ppapi/c/pp_completion_callback.h"
 #include "ppapi/c/ppb_audio.h"
@@ -13,8 +15,6 @@
 #include "ppapi/thunk/enter.h"
 #include "ppapi/thunk/ppb_audio_config_api.h"
 #include "ppapi/thunk/thunk.h"
-#include "webkit/plugins/ppapi/common.h"
-#include "webkit/plugins/ppapi/resource_helper.h"
 
 using ppapi::PpapiGlobals;
 using ppapi::thunk::EnterResourceNoLock;
diff --git a/webkit/plugins/ppapi/ppb_audio_impl.h b/content/renderer/pepper/ppb_audio_impl.h
similarity index 87%
rename from webkit/plugins/ppapi/ppb_audio_impl.h
rename to content/renderer/pepper/ppb_audio_impl.h
index 17f29b07..49146cb 100644
--- a/webkit/plugins/ppapi/ppb_audio_impl.h
+++ b/content/renderer/pepper/ppb_audio_impl.h
@@ -2,13 +2,15 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_PPB_AUDIO_IMPL_H_
-#define WEBKIT_PLUGINS_PPAPI_PPB_AUDIO_IMPL_H_
+#ifndef CONTENT_RENDERER_PEPPER_PPB_AUDIO_IMPL_H_
+#define CONTENT_RENDERER_PEPPER_PPB_AUDIO_IMPL_H_
 
 #include "base/basictypes.h"
 #include "base/memory/ref_counted.h"
 #include "base/memory/shared_memory.h"
 #include "base/sync_socket.h"
+#include "content/renderer/pepper/audio_helper.h"
+#include "content/renderer/pepper/plugin_delegate.h"
 #include "ppapi/c/pp_completion_callback.h"
 #include "ppapi/c/ppb_audio.h"
 #include "ppapi/c/ppb_audio_config.h"
@@ -16,8 +18,6 @@
 #include "ppapi/shared_impl/ppb_audio_shared.h"
 #include "ppapi/shared_impl/resource.h"
 #include "ppapi/shared_impl/scoped_pp_resource.h"
-#include "webkit/plugins/ppapi/audio_helper.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
 
 namespace webkit {
 namespace ppapi {
@@ -34,8 +34,6 @@
   // to properly create & initialize this class.
   explicit PPB_Audio_Impl(PP_Instance instance);
 
-  virtual ~PPB_Audio_Impl();
-
   // Creation function for untrusted plugins. This handles all initialization
   // and will return 0 on failure.
   static PP_Resource Create(PP_Instance instance,
@@ -49,7 +47,7 @@
             void* user_data);
 
   // Resource overrides.
-  virtual ::ppapi::thunk::PPB_Audio_API* AsPPB_Audio_API();
+  virtual ::ppapi::thunk::PPB_Audio_API* AsPPB_Audio_API() OVERRIDE;
 
   // PPB_Audio_API implementation.
   virtual PP_Resource GetCurrentConfig() OVERRIDE;
@@ -62,10 +60,12 @@
   virtual int32_t GetSharedMemory(int* shm_handle, uint32_t* shm_size) OVERRIDE;
 
  private:
+  virtual ~PPB_Audio_Impl();
+
   // AudioHelper implementation.
   virtual void OnSetStreamInfo(base::SharedMemoryHandle shared_memory_handle,
                                size_t shared_memory_size_,
-                               base::SyncSocket::Handle socket);
+                               base::SyncSocket::Handle socket) OVERRIDE;
 
   // AudioConfig used for creating this Audio object. We own a ref.
   ::ppapi::ScopedPPResource config_;
@@ -83,4 +83,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_PPB_AUDIO_IMPL_H_
+#endif  // CONTENT_RENDERER_PEPPER_PPB_AUDIO_IMPL_H_
diff --git a/webkit/plugins/ppapi/ppb_broker_impl.cc b/content/renderer/pepper/ppb_broker_impl.cc
similarity index 91%
rename from webkit/plugins/ppapi/ppb_broker_impl.cc
rename to content/renderer/pepper/ppb_broker_impl.cc
index ed5157e..7401b28c 100644
--- a/webkit/plugins/ppapi/ppb_broker_impl.cc
+++ b/content/renderer/pepper/ppb_broker_impl.cc
@@ -2,17 +2,17 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/ppb_broker_impl.h"
+#include "content/renderer/pepper/ppb_broker_impl.h"
 
 #include "base/logging.h"
+#include "content/renderer/pepper/common.h"
+#include "content/renderer/pepper/plugin_module.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
+#include "content/renderer/pepper/resource_helper.h"
 #include "ppapi/shared_impl/platform_file.h"
 #include "third_party/WebKit/public/web/WebDocument.h"
 #include "third_party/WebKit/public/web/WebElement.h"
 #include "third_party/WebKit/public/web/WebPluginContainer.h"
-#include "webkit/plugins/ppapi/common.h"
-#include "webkit/plugins/ppapi/plugin_module.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
-#include "webkit/plugins/ppapi/resource_helper.h"
 
 using ppapi::PlatformFileToInt;
 using ppapi::thunk::PPB_Broker_API;
diff --git a/webkit/plugins/ppapi/ppb_broker_impl.h b/content/renderer/pepper/ppb_broker_impl.h
similarity index 78%
rename from webkit/plugins/ppapi/ppb_broker_impl.h
rename to content/renderer/pepper/ppb_broker_impl.h
index eba934d..0c7a76f 100644
--- a/webkit/plugins/ppapi/ppb_broker_impl.h
+++ b/content/renderer/pepper/ppb_broker_impl.h
@@ -2,30 +2,27 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_PPB_BROKER_IMPL_H_
-#define WEBKIT_PLUGINS_PPAPI_PPB_BROKER_IMPL_H_
+#ifndef CONTENT_RENDERER_PEPPER_PPB_BROKER_IMPL_H_
+#define CONTENT_RENDERER_PEPPER_PPB_BROKER_IMPL_H_
 
 #include "base/basictypes.h"
 #include "base/compiler_specific.h"
 #include "base/memory/weak_ptr.h"
+#include "content/renderer/pepper/plugin_delegate.h"
 #include "ppapi/c/pp_completion_callback.h"
 #include "ppapi/c/trusted/ppb_broker_trusted.h"
 #include "ppapi/shared_impl/resource.h"
 #include "ppapi/shared_impl/tracked_callback.h"
 #include "ppapi/thunk/ppb_broker_api.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
-#include "webkit/plugins/webkit_plugins_export.h"
 
 namespace webkit {
 namespace ppapi {
 
-class WEBKIT_PLUGINS_EXPORT PPB_Broker_Impl
-    : public ::ppapi::Resource,
-      NON_EXPORTED_BASE(public ::ppapi::thunk::PPB_Broker_API),
-      public base::SupportsWeakPtr<PPB_Broker_Impl> {
+class PPB_Broker_Impl : public ::ppapi::Resource,
+                        public ::ppapi::thunk::PPB_Broker_API,
+                        public base::SupportsWeakPtr<PPB_Broker_Impl> {
  public:
   explicit PPB_Broker_Impl(PP_Instance instance);
-  virtual ~PPB_Broker_Impl();
 
   // Resource override.
   virtual ::ppapi::thunk::PPB_Broker_API* AsPPB_Broker_API() OVERRIDE;
@@ -42,6 +39,7 @@
   void BrokerConnected(int32_t handle, int32_t result);
 
  private:
+  virtual ~PPB_Broker_Impl();
   // PluginDelegate ppapi broker object.
   // We don't own this pointer but are responsible for calling Disconnect on it.
   PluginDelegate::Broker* broker_;
@@ -59,4 +57,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_PPB_BROKER_IMPL_H_
+#endif  // CONTENT_RENDERER_PEPPER_PPB_BROKER_IMPL_H_
diff --git a/webkit/plugins/ppapi/ppb_buffer_impl.cc b/content/renderer/pepper/ppb_buffer_impl.cc
similarity index 92%
rename from webkit/plugins/ppapi/ppb_buffer_impl.cc
rename to content/renderer/pepper/ppb_buffer_impl.cc
index 104c277..24599e7 100644
--- a/webkit/plugins/ppapi/ppb_buffer_impl.cc
+++ b/content/renderer/pepper/ppb_buffer_impl.cc
@@ -2,18 +2,18 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/ppb_buffer_impl.h"
+#include "content/renderer/pepper/ppb_buffer_impl.h"
 
 #include <algorithm>
 
 #include "base/logging.h"
 #include "base/memory/scoped_ptr.h"
+#include "content/renderer/pepper/common.h"
+#include "content/renderer/pepper/plugin_delegate.h"
+#include "content/renderer/pepper/resource_helper.h"
 #include "ppapi/c/dev/ppb_buffer_dev.h"
 #include "ppapi/c/pp_instance.h"
 #include "ppapi/c/pp_resource.h"
-#include "webkit/plugins/ppapi/common.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
-#include "webkit/plugins/ppapi/resource_helper.h"
 
 using ::ppapi::thunk::PPB_Buffer_API;
 
diff --git a/webkit/plugins/ppapi/ppb_buffer_impl.h b/content/renderer/pepper/ppb_buffer_impl.h
similarity index 85%
rename from webkit/plugins/ppapi/ppb_buffer_impl.h
rename to content/renderer/pepper/ppb_buffer_impl.h
index e26d17f..5da2c72 100644
--- a/webkit/plugins/ppapi/ppb_buffer_impl.h
+++ b/content/renderer/pepper/ppb_buffer_impl.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_PPB_BUFFER_IMPL_H_
-#define WEBKIT_PLUGINS_PPAPI_PPB_BUFFER_IMPL_H_
+#ifndef CONTENT_RENDERER_PEPPER_PPB_BUFFER_IMPL_H_
+#define CONTENT_RENDERER_PEPPER_PPB_BUFFER_IMPL_H_
 
 #include "base/basictypes.h"
 #include "base/memory/ref_counted.h"
@@ -11,17 +11,13 @@
 #include "base/memory/shared_memory.h"
 #include "ppapi/shared_impl/resource.h"
 #include "ppapi/thunk/ppb_buffer_api.h"
-#include "webkit/plugins/webkit_plugins_export.h"
 
 namespace webkit {
 namespace ppapi {
 
-class WEBKIT_PLUGINS_EXPORT PPB_Buffer_Impl :
-    public ::ppapi::Resource,
-    public ::ppapi::thunk::PPB_Buffer_API {
+class PPB_Buffer_Impl : public ::ppapi::Resource,
+                        public ::ppapi::thunk::PPB_Buffer_API {
  public:
-  virtual ~PPB_Buffer_Impl();
-
   static PP_Resource Create(PP_Instance instance, uint32_t size);
   static scoped_refptr<PPB_Buffer_Impl> CreateResource(PP_Instance instance,
                                                        uint32_t size);
@@ -44,6 +40,8 @@
   virtual int32_t GetSharedMemory(int* handle) OVERRIDE;
 
  private:
+  virtual ~PPB_Buffer_Impl();
+
   explicit PPB_Buffer_Impl(PP_Instance instance);
   bool Init(uint32_t size);
 
@@ -79,4 +77,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_PPB_BUFFER_IMPL_H_
+#endif  // CONTENT_RENDERER_PEPPER_PPB_BUFFER_IMPL_H_
diff --git a/webkit/plugins/ppapi/ppb_file_ref_impl.cc b/content/renderer/pepper/ppb_file_ref_impl.cc
similarity index 97%
rename from webkit/plugins/ppapi/ppb_file_ref_impl.cc
rename to content/renderer/pepper/ppb_file_ref_impl.cc
index 2f61669..9a97bed 100644
--- a/webkit/plugins/ppapi/ppb_file_ref_impl.cc
+++ b/content/renderer/pepper/ppb_file_ref_impl.cc
@@ -2,12 +2,17 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/ppb_file_ref_impl.h"
+#include "content/renderer/pepper/ppb_file_ref_impl.h"
 
 #include "base/files/file_util_proxy.h"
 #include "base/platform_file.h"
 #include "base/strings/string_util.h"
 #include "base/strings/utf_string_conversions.h"
+#include "content/renderer/pepper/common.h"
+#include "content/renderer/pepper/plugin_delegate.h"
+#include "content/renderer/pepper/plugin_module.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
+#include "content/renderer/pepper/resource_helper.h"
 #include "net/base/escape.h"
 #include "ppapi/c/pp_errors.h"
 #include "ppapi/shared_impl/file_type_conversion.h"
@@ -18,11 +23,6 @@
 #include "url/gurl.h"
 #include "webkit/common/fileapi/directory_entry.h"
 #include "webkit/common/fileapi/file_system_util.h"
-#include "webkit/plugins/ppapi/common.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
-#include "webkit/plugins/ppapi/plugin_module.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
-#include "webkit/plugins/ppapi/resource_helper.h"
 
 using ppapi::HostResource;
 using ppapi::PPB_FileRef_CreateInfo;
diff --git a/webkit/plugins/ppapi/ppb_file_ref_impl.h b/content/renderer/pepper/ppb_file_ref_impl.h
similarity index 92%
rename from webkit/plugins/ppapi/ppb_file_ref_impl.h
rename to content/renderer/pepper/ppb_file_ref_impl.h
index 9caacf7..30612cd7 100644
--- a/webkit/plugins/ppapi/ppb_file_ref_impl.h
+++ b/content/renderer/pepper/ppb_file_ref_impl.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_PPB_FILE_REF_IMPL_H_
-#define WEBKIT_PLUGINS_PPAPI_PPB_FILE_REF_IMPL_H_
+#ifndef CONTENT_RENDERER_PEPPER_PPB_FILE_REF_IMPL_H_
+#define CONTENT_RENDERER_PEPPER_PPB_FILE_REF_IMPL_H_
 
 #include <string>
 #include <vector>
@@ -16,7 +16,6 @@
 #include "ppapi/shared_impl/scoped_pp_resource.h"
 #include "ppapi/shared_impl/var.h"
 #include "url/gurl.h"
-#include "webkit/plugins/webkit_plugins_export.h"
 
 namespace webkit {
 namespace ppapi {
@@ -25,14 +24,12 @@
 
 class PPB_FileSystem_Impl;
 
-class WEBKIT_PLUGINS_EXPORT PPB_FileRef_Impl
-    : public ::ppapi::PPB_FileRef_Shared {
+class PPB_FileRef_Impl : public ::ppapi::PPB_FileRef_Shared {
  public:
   PPB_FileRef_Impl(const ::ppapi::PPB_FileRef_CreateInfo& info,
                    PP_Resource file_system);
   PPB_FileRef_Impl(const ::ppapi::PPB_FileRef_CreateInfo& info,
                    const base::FilePath& external_file_path);
-  virtual ~PPB_FileRef_Impl();
 
   // The returned object will have a refcount of 0 (just like "new").
   static PPB_FileRef_Impl* CreateInternal(PP_Instance instance,
@@ -72,7 +69,7 @@
       linked_ptr<std::vector< ::ppapi::PPB_FileRef_CreateInfo> > files,
       linked_ptr<std::vector<PP_FileType> > file_types,
       scoped_refptr< ::ppapi::TrackedCallback> callback) OVERRIDE;
-  virtual PP_Var GetAbsolutePath();
+  virtual PP_Var GetAbsolutePath() OVERRIDE;
 
   PP_Resource file_system_resource() const { return file_system_; }
 
@@ -91,6 +88,8 @@
   }
 
  private:
+  virtual ~PPB_FileRef_Impl();
+
   // Many mutation functions are allow only to non-external filesystems, This
   // function returns true if the filesystem is opened and isn't external as an
   // access check for these functions.
@@ -124,4 +123,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_PPB_FILE_REF_IMPL_H_
+#endif  // CONTENT_RENDERER_PEPPER_PPB_FILE_REF_IMPL_H_
diff --git a/webkit/plugins/ppapi/ppb_flash_message_loop_impl.cc b/content/renderer/pepper/ppb_flash_message_loop_impl.cc
similarity index 95%
rename from webkit/plugins/ppapi/ppb_flash_message_loop_impl.cc
rename to content/renderer/pepper/ppb_flash_message_loop_impl.cc
index e02c6e6..105c5a0 100644
--- a/webkit/plugins/ppapi/ppb_flash_message_loop_impl.cc
+++ b/content/renderer/pepper/ppb_flash_message_loop_impl.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/ppb_flash_message_loop_impl.h"
+#include "content/renderer/pepper/ppb_flash_message_loop_impl.h"
 
 #include "base/callback.h"
 #include "base/message_loop/message_loop.h"
@@ -34,6 +34,9 @@
   }
 
  private:
+  friend class base::RefCounted<State>;
+  virtual ~State() {}
+
   int32_t result_;
   bool run_called_;
   bool quit_called_;
diff --git a/webkit/plugins/ppapi/ppb_flash_message_loop_impl.h b/content/renderer/pepper/ppb_flash_message_loop_impl.h
similarity index 88%
rename from webkit/plugins/ppapi/ppb_flash_message_loop_impl.h
rename to content/renderer/pepper/ppb_flash_message_loop_impl.h
index 1349a52..ef6903c8 100644
--- a/webkit/plugins/ppapi/ppb_flash_message_loop_impl.h
+++ b/content/renderer/pepper/ppb_flash_message_loop_impl.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_PPB_FLASH_MESSAGE_LOOP_IMPL_H_
-#define WEBKIT_PLUGINS_PPAPI_PPB_FLASH_MESSAGE_LOOP_IMPL_H_
+#ifndef CONTENT_RENDERER_PEPPER_PPB_FLASH_MESSAGE_LOOP_IMPL_H_
+#define CONTENT_RENDERER_PEPPER_PPB_FLASH_MESSAGE_LOOP_IMPL_H_
 
 #include "base/basictypes.h"
 #include "base/compiler_specific.h"
@@ -18,8 +18,6 @@
     : public ::ppapi::Resource,
       public ::ppapi::thunk::PPB_Flash_MessageLoop_API {
  public:
-  virtual ~PPB_Flash_MessageLoop_Impl();
-
   static PP_Resource Create(PP_Instance instance);
 
   // Resource.
@@ -36,6 +34,7 @@
   class State;
 
   explicit PPB_Flash_MessageLoop_Impl(PP_Instance instance);
+  virtual ~PPB_Flash_MessageLoop_Impl();
 
   // If |callback| is valid, it will be called when the message loop is signaled
   // to quit, and the result passed into it will be the same value as what this
@@ -52,4 +51,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_PPB_FLASH_MESSAGE_LOOP_IMPL_H_
+#endif  // CONTENT_RENDERER_PEPPER_PPB_FLASH_MESSAGE_LOOP_IMPL_H_
diff --git a/webkit/plugins/ppapi/ppb_gpu_blacklist_private_impl.cc b/content/renderer/pepper/ppb_gpu_blacklist_private_impl.cc
similarity index 92%
rename from webkit/plugins/ppapi/ppb_gpu_blacklist_private_impl.cc
rename to content/renderer/pepper/ppb_gpu_blacklist_private_impl.cc
index e77107a..81c4292 100644
--- a/webkit/plugins/ppapi/ppb_gpu_blacklist_private_impl.cc
+++ b/content/renderer/pepper/ppb_gpu_blacklist_private_impl.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/ppb_gpu_blacklist_private_impl.h"
+#include "content/renderer/pepper/ppb_gpu_blacklist_private_impl.h"
 
 #include "base/command_line.h"
 #include "base/logging.h"
diff --git a/webkit/plugins/ppapi/ppb_gpu_blacklist_private_impl.h b/content/renderer/pepper/ppb_gpu_blacklist_private_impl.h
similarity index 67%
rename from webkit/plugins/ppapi/ppb_gpu_blacklist_private_impl.h
rename to content/renderer/pepper/ppb_gpu_blacklist_private_impl.h
index 0a74c74e8..189afe31 100644
--- a/webkit/plugins/ppapi/ppb_gpu_blacklist_private_impl.h
+++ b/content/renderer/pepper/ppb_gpu_blacklist_private_impl.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_PPB_GPU_BLACKLIST_PRIVATE_IMPL_H_
-#define WEBKIT_PLUGINS_PPAPI_PPB_GPU_BLACKLIST_PRIVATE_IMPL_H_
+#ifndef CONTENT_RENDERER_PEPPER_PPB_GPU_BLACKLIST_PRIVATE_IMPL_H_
+#define CONTENT_RENDERER_PEPPER_PPB_GPU_BLACKLIST_PRIVATE_IMPL_H_
 
 #include "ppapi/c/private/ppb_gpu_blacklist_private.h"
 
@@ -18,5 +18,5 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_PPB_GPU_BLACKLIST_PRIVATE_IMPL_H_
+#endif  // CONTENT_RENDERER_PEPPER_PPB_GPU_BLACKLIST_PRIVATE_IMPL_H_
 
diff --git a/webkit/plugins/ppapi/ppb_graphics_3d_impl.cc b/content/renderer/pepper/ppb_graphics_3d_impl.cc
similarity index 97%
rename from webkit/plugins/ppapi/ppb_graphics_3d_impl.cc
rename to content/renderer/pepper/ppb_graphics_3d_impl.cc
index 8b135cda..26a7789 100644
--- a/webkit/plugins/ppapi/ppb_graphics_3d_impl.cc
+++ b/content/renderer/pepper/ppb_graphics_3d_impl.cc
@@ -2,12 +2,15 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/ppb_graphics_3d_impl.h"
+#include "content/renderer/pepper/ppb_graphics_3d_impl.h"
 
 #include "base/bind.h"
 #include "base/command_line.h"
 #include "base/message_loop/message_loop.h"
 #include "base/strings/utf_string_conversions.h"
+#include "content/renderer/pepper/plugin_module.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
+#include "content/renderer/pepper/resource_helper.h"
 #include "gpu/command_buffer/client/gles2_implementation.h"
 #include "ppapi/c/ppp_graphics_3d.h"
 #include "ppapi/thunk/enter.h"
@@ -18,9 +21,6 @@
 #include "third_party/WebKit/public/web/WebFrame.h"
 #include "third_party/WebKit/public/web/WebPluginContainer.h"
 #include "webkit/plugins/plugin_switches.h"
-#include "webkit/plugins/ppapi/plugin_module.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
-#include "webkit/plugins/ppapi/resource_helper.h"
 
 using ppapi::thunk::EnterResourceNoLock;
 using ppapi::thunk::PPB_Graphics3D_API;
diff --git a/webkit/plugins/ppapi/ppb_graphics_3d_impl.h b/content/renderer/pepper/ppb_graphics_3d_impl.h
similarity index 93%
rename from webkit/plugins/ppapi/ppb_graphics_3d_impl.h
rename to content/renderer/pepper/ppb_graphics_3d_impl.h
index ddd85c7c..e84a766b 100644
--- a/webkit/plugins/ppapi/ppb_graphics_3d_impl.h
+++ b/content/renderer/pepper/ppb_graphics_3d_impl.h
@@ -2,21 +2,19 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_PPB_GRAPHICS_3D_IMPL_H_
-#define WEBKIT_PLUGINS_PPAPI_PPB_GRAPHICS_3D_IMPL_H_
+#ifndef CONTENT_RENDERER_PEPPER_PPB_GRAPHICS_3D_IMPL_H_
+#define CONTENT_RENDERER_PEPPER_PPB_GRAPHICS_3D_IMPL_H_
 
 #include "base/memory/weak_ptr.h"
+#include "content/renderer/pepper/plugin_delegate.h"
 #include "ppapi/shared_impl/ppb_graphics_3d_shared.h"
 #include "ppapi/shared_impl/resource.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
 
 namespace webkit {
 namespace ppapi {
 
 class PPB_Graphics3D_Impl : public ::ppapi::PPB_Graphics3D_Shared {
  public:
-  virtual ~PPB_Graphics3D_Impl();
-
   static PP_Resource Create(PP_Instance instance,
                             PP_Resource share_context,
                             const int32_t* attrib_list);
@@ -57,6 +55,7 @@
   }
 
  protected:
+  virtual ~PPB_Graphics3D_Impl();
   // ppapi::PPB_Graphics3D_Shared overrides.
   virtual gpu::CommandBuffer* GetCommandBuffer() OVERRIDE;
   virtual int32 DoSwapBuffers() OVERRIDE;
@@ -92,4 +91,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_PPB_GRAPHICS_3D_IMPL_H_
+#endif  // CONTENT_RENDERER_PEPPER_PPB_GRAPHICS_3D_IMPL_H_
diff --git a/webkit/plugins/ppapi/ppb_image_data_impl.cc b/content/renderer/pepper/ppb_image_data_impl.cc
similarity index 97%
rename from webkit/plugins/ppapi/ppb_image_data_impl.cc
rename to content/renderer/pepper/ppb_image_data_impl.cc
index 9574849e..e17b348 100644
--- a/webkit/plugins/ppapi/ppb_image_data_impl.cc
+++ b/content/renderer/pepper/ppb_image_data_impl.cc
@@ -2,21 +2,21 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/ppb_image_data_impl.h"
+#include "content/renderer/pepper/ppb_image_data_impl.h"
 
 #include <algorithm>
 #include <limits>
 
 #include "base/logging.h"
 #include "base/memory/scoped_ptr.h"
+#include "content/renderer/pepper/common.h"
+#include "content/renderer/pepper/resource_helper.h"
 #include "skia/ext/platform_canvas.h"
 #include "ppapi/c/pp_instance.h"
 #include "ppapi/c/pp_resource.h"
 #include "ppapi/c/ppb_image_data.h"
 #include "ppapi/thunk/thunk.h"
 #include "third_party/skia/include/core/SkColorPriv.h"
-#include "webkit/plugins/ppapi/common.h"
-#include "webkit/plugins/ppapi/resource_helper.h"
 
 using ::ppapi::thunk::PPB_ImageData_API;
 
diff --git a/webkit/plugins/ppapi/ppb_image_data_impl.h b/content/renderer/pepper/ppb_image_data_impl.h
similarity index 93%
rename from webkit/plugins/ppapi/ppb_image_data_impl.h
rename to content/renderer/pepper/ppb_image_data_impl.h
index 733fcf09..58cba82b 100644
--- a/webkit/plugins/ppapi/ppb_image_data_impl.h
+++ b/content/renderer/pepper/ppb_image_data_impl.h
@@ -2,18 +2,18 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_PPB_IMAGE_DATA_IMPL_H_
-#define WEBKIT_PLUGINS_PPAPI_PPB_IMAGE_DATA_IMPL_H_
+#ifndef CONTENT_RENDERER_PEPPER_PPB_IMAGE_DATA_IMPL_H_
+#define CONTENT_RENDERER_PEPPER_PPB_IMAGE_DATA_IMPL_H_
 
 #include "base/basictypes.h"
 #include "base/memory/scoped_ptr.h"
+#include "content/common/content_export.h"
+#include "content/renderer/pepper/plugin_delegate.h"
 #include "ppapi/c/ppb_image_data.h"
 #include "ppapi/shared_impl/ppb_image_data_shared.h"
 #include "ppapi/shared_impl/resource.h"
 #include "ppapi/thunk/ppb_image_data_api.h"
 #include "third_party/skia/include/core/SkCanvas.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
-#include "webkit/plugins/webkit_plugins_export.h"
 
 class SkBitmap;
 class SkCanvas;
@@ -21,7 +21,7 @@
 namespace webkit {
 namespace ppapi {
 
-class WEBKIT_PLUGINS_EXPORT PPB_ImageData_Impl
+class CONTENT_EXPORT PPB_ImageData_Impl
     : public ::ppapi::Resource,
       public ::ppapi::PPB_ImageData_Shared,
       public NON_EXPORTED_BASE(::ppapi::thunk::PPB_ImageData_API) {
@@ -50,7 +50,6 @@
   // for some internal uses of ImageData (like Graphics2D).
   PPB_ImageData_Impl(PP_Instance instance,
                      PPB_ImageData_Shared::ImageDataType type);
-  virtual ~PPB_ImageData_Impl();
 
   bool Init(PP_ImageDataFormat format,
             int width, int height,
@@ -88,6 +87,8 @@
   const SkBitmap* GetMappedBitmap() const;
 
  private:
+  virtual ~PPB_ImageData_Impl();
+
   PP_ImageDataFormat format_;
   int width_;
   int height_;
@@ -130,10 +131,10 @@
   virtual ~ImageDataSimpleBackend();
 
   // PPB_ImageData_Impl::Backend implementation.
-  bool Init(PPB_ImageData_Impl* impl, PP_ImageDataFormat format,
+  virtual bool Init(PPB_ImageData_Impl* impl, PP_ImageDataFormat format,
             int width, int height, bool init_to_zero) OVERRIDE;
   virtual bool IsMapped() const OVERRIDE;
-  PluginDelegate::PlatformImage2D* PlatformImage() const OVERRIDE;
+  virtual PluginDelegate::PlatformImage2D* PlatformImage() const OVERRIDE;
   virtual void* Map() OVERRIDE;
   virtual void Unmap() OVERRIDE;
   virtual int32_t GetSharedMemory(int* handle, uint32_t* byte_count) OVERRIDE;
@@ -193,4 +194,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_PPB_IMAGE_DATA_IMPL_H_
+#endif  // CONTENT_RENDERER_PEPPER_PPB_IMAGE_DATA_IMPL_H_
diff --git a/webkit/plugins/ppapi/ppb_network_monitor_private_impl.cc b/content/renderer/pepper/ppb_network_monitor_private_impl.cc
similarity index 95%
rename from webkit/plugins/ppapi/ppb_network_monitor_private_impl.cc
rename to content/renderer/pepper/ppb_network_monitor_private_impl.cc
index 64691c83..75a89354 100644
--- a/webkit/plugins/ppapi/ppb_network_monitor_private_impl.cc
+++ b/content/renderer/pepper/ppb_network_monitor_private_impl.cc
@@ -2,14 +2,14 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/ppb_network_monitor_private_impl.h"
+#include "content/renderer/pepper/ppb_network_monitor_private_impl.h"
 
 #include "base/bind.h"
+#include "content/renderer/pepper/resource_helper.h"
 #include "ppapi/shared_impl/ppb_network_list_private_shared.h"
 #include "ppapi/shared_impl/private/net_address_private_impl.h"
 #include "net/base/ip_endpoint.h"
 #include "net/base/net_util.h"
-#include "webkit/plugins/ppapi/resource_helper.h"
 
 namespace webkit {
 namespace ppapi {
diff --git a/webkit/plugins/ppapi/ppb_network_monitor_private_impl.h b/content/renderer/pepper/ppb_network_monitor_private_impl.h
similarity index 85%
rename from webkit/plugins/ppapi/ppb_network_monitor_private_impl.h
rename to content/renderer/pepper/ppb_network_monitor_private_impl.h
index fc61dfc..c603eb1 100644
--- a/webkit/plugins/ppapi/ppb_network_monitor_private_impl.h
+++ b/content/renderer/pepper/ppb_network_monitor_private_impl.h
@@ -2,16 +2,16 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_PPB_NETWORK_MONITOR_PRIVATE_IMPL_H_
-#define WEBKIT_PLUGINS_PPAPI_PPB_NETWORK_MONITOR_PRIVATE_IMPL_H_
+#ifndef CONTENT_RENDERER_PEPPER_PPB_NETWORK_MONITOR_PRIVATE_IMPL_H_
+#define CONTENT_RENDERER_PEPPER_PPB_NETWORK_MONITOR_PRIVATE_IMPL_H_
 
 #include "base/basictypes.h"
 #include "base/compiler_specific.h"
+#include "content/renderer/pepper/plugin_delegate.h"
 #include "ppapi/c/private/ppb_network_monitor_private.h"
 #include "ppapi/shared_impl/resource.h"
 #include "ppapi/thunk/ppb_network_monitor_private_api.h"
 #include "webkit/glue/network_list_observer.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
 
 namespace webkit {
 namespace ppapi {
@@ -25,8 +25,6 @@
                             PPB_NetworkMonitor_Callback callback,
                             void* user_data);
 
-  virtual ~PPB_NetworkMonitor_Private_Impl();
-
   virtual ::ppapi::thunk::PPB_NetworkMonitor_Private_API*
       AsPPB_NetworkMonitor_Private_API() OVERRIDE;
 
@@ -38,6 +36,7 @@
   PPB_NetworkMonitor_Private_Impl(PP_Instance instance,
                                   PPB_NetworkMonitor_Callback callback,
                                   void* user_data);
+  virtual ~PPB_NetworkMonitor_Private_Impl();
 
   bool Start();
 
@@ -51,4 +50,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_PPB_NETWORK_MONITOR_PRIVATE_IMPL_H_
+#endif  // CONTENT_RENDERER_PEPPER_PPB_NETWORK_MONITOR_PRIVATE_IMPL_H_
diff --git a/webkit/plugins/ppapi/ppb_proxy_impl.cc b/content/renderer/pepper/ppb_proxy_impl.cc
similarity index 92%
rename from webkit/plugins/ppapi/ppb_proxy_impl.cc
rename to content/renderer/pepper/ppb_proxy_impl.cc
index 8208797b..caf63f7 100644
--- a/webkit/plugins/ppapi/ppb_proxy_impl.cc
+++ b/content/renderer/pepper/ppb_proxy_impl.cc
@@ -2,13 +2,13 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/ppb_proxy_impl.h"
+#include "content/renderer/pepper/ppb_proxy_impl.h"
 
 #include "ppapi/c/private/ppb_proxy_private.h"
 #include "ppapi/thunk/enter.h"
 #include "ppapi/thunk/ppb_image_data_api.h"
-#include "webkit/plugins/ppapi/host_globals.h"
-#include "webkit/plugins/ppapi/plugin_module.h"
+#include "content/renderer/pepper/host_globals.h"
+#include "content/renderer/pepper/plugin_module.h"
 
 using ppapi::PpapiGlobals;
 using ppapi::thunk::EnterResource;
diff --git a/webkit/plugins/ppapi/ppb_proxy_impl.h b/content/renderer/pepper/ppb_proxy_impl.h
similarity index 70%
rename from webkit/plugins/ppapi/ppb_proxy_impl.h
rename to content/renderer/pepper/ppb_proxy_impl.h
index 72a333ac..04e12fc 100644
--- a/webkit/plugins/ppapi/ppb_proxy_impl.h
+++ b/content/renderer/pepper/ppb_proxy_impl.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_PPB_PROXY_IMPL_H_
-#define WEBKIT_PLUGINS_PPAPI_PPB_PROXY_IMPL_H_
+#ifndef CONTENT_RENDERER_PEPPER_PPB_PROXY_IMPL_H_
+#define CONTENT_RENDERER_PEPPER_PPB_PROXY_IMPL_H_
 
 struct PPB_Proxy_Private;
 
@@ -18,5 +18,5 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_PPB_PROXY_IMPL_H_
+#endif  // CONTENT_RENDERER_PEPPER_PPB_PROXY_IMPL_H_
 
diff --git a/webkit/plugins/ppapi/ppb_scrollbar_impl.cc b/content/renderer/pepper/ppb_scrollbar_impl.cc
similarity index 94%
rename from webkit/plugins/ppapi/ppb_scrollbar_impl.cc
rename to content/renderer/pepper/ppb_scrollbar_impl.cc
index 38dbb33b..a326cad 100644
--- a/webkit/plugins/ppapi/ppb_scrollbar_impl.cc
+++ b/content/renderer/pepper/ppb_scrollbar_impl.cc
@@ -2,11 +2,17 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/ppb_scrollbar_impl.h"
+#include "content/renderer/pepper/ppb_scrollbar_impl.h"
 
 #include "base/bind.h"
 #include "base/logging.h"
 #include "base/message_loop/message_loop.h"
+#include "content/renderer/pepper/common.h"
+#include "content/renderer/pepper/event_conversion.h"
+#include "content/renderer/pepper/plugin_module.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
+#include "content/renderer/pepper/ppb_image_data_impl.h"
+#include "content/renderer/pepper/resource_helper.h"
 #include "ppapi/c/dev/ppp_scrollbar_dev.h"
 #include "ppapi/thunk/thunk.h"
 #include "skia/ext/platform_canvas.h"
@@ -16,12 +22,6 @@
 #include "third_party/WebKit/public/web/WebInputEvent.h"
 #include "third_party/WebKit/public/web/WebPluginScrollbar.h"
 #include "webkit/glue/webkit_glue.h"
-#include "webkit/plugins/ppapi/common.h"
-#include "webkit/plugins/ppapi/event_conversion.h"
-#include "webkit/plugins/ppapi/plugin_module.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
-#include "webkit/plugins/ppapi/ppb_image_data_impl.h"
-#include "webkit/plugins/ppapi/resource_helper.h"
 
 #if defined(OS_WIN)
 #include "base/win/windows_version.h"
diff --git a/webkit/plugins/ppapi/ppb_scrollbar_impl.h b/content/renderer/pepper/ppb_scrollbar_impl.h
similarity index 90%
rename from webkit/plugins/ppapi/ppb_scrollbar_impl.h
rename to content/renderer/pepper/ppb_scrollbar_impl.h
index b3537fc8..eed236f 100644
--- a/webkit/plugins/ppapi/ppb_scrollbar_impl.h
+++ b/content/renderer/pepper/ppb_scrollbar_impl.h
@@ -2,19 +2,19 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_PPB_SCROLLBAR_IMPL_H_
-#define WEBKIT_PLUGINS_PPAPI_PPB_SCROLLBAR_IMPL_H_
+#ifndef CONTENT_RENDERER_PEPPER_PPB_SCROLLBAR_IMPL_H_
+#define CONTENT_RENDERER_PEPPER_PPB_SCROLLBAR_IMPL_H_
 
 #include <vector>
 
 #include "base/compiler_specific.h"
 #include "base/memory/scoped_ptr.h"
 #include "base/memory/weak_ptr.h"
+#include "content/renderer/pepper/ppb_widget_impl.h"
 #include "ppapi/thunk/ppb_scrollbar_api.h"
 #include "third_party/WebKit/public/platform/WebRect.h"
 #include "third_party/WebKit/public/web/WebPluginScrollbarClient.h"
 #include "ui/gfx/rect.h"
-#include "webkit/plugins/ppapi/ppb_widget_impl.h"
 
 namespace webkit {
 namespace ppapi {
@@ -25,11 +25,9 @@
  public:
   static PP_Resource Create(PP_Instance instance, bool vertical);
 
-  virtual ~PPB_Scrollbar_Impl();
-
   // Resource overrides.
   virtual PPB_Scrollbar_API* AsPPB_Scrollbar_API() OVERRIDE;
-  virtual void InstanceWasDeleted();
+  virtual void InstanceWasDeleted() OVERRIDE;
 
   // PPB_Scrollbar_API implementation.
   virtual uint32_t GetThickness() OVERRIDE;
@@ -41,6 +39,8 @@
   virtual void ScrollBy(PP_ScrollBy_Dev unit, int32_t multiplier) OVERRIDE;
 
  private:
+  virtual ~PPB_Scrollbar_Impl();
+
   explicit PPB_Scrollbar_Impl(PP_Instance instance);
   void Init(bool vertical);
 
@@ -75,4 +75,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_PPB_SCROLLBAR_IMPL_H_
+#endif  // CONTENT_RENDERER_PEPPER_PPB_SCROLLBAR_IMPL_H_
diff --git a/webkit/plugins/ppapi/ppb_tcp_server_socket_private_impl.cc b/content/renderer/pepper/ppb_tcp_server_socket_private_impl.cc
similarity index 88%
rename from webkit/plugins/ppapi/ppb_tcp_server_socket_private_impl.cc
rename to content/renderer/pepper/ppb_tcp_server_socket_private_impl.cc
index 0d883d2..2e8ceda 100644
--- a/webkit/plugins/ppapi/ppb_tcp_server_socket_private_impl.cc
+++ b/content/renderer/pepper/ppb_tcp_server_socket_private_impl.cc
@@ -2,13 +2,13 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/ppb_tcp_server_socket_private_impl.h"
+#include "content/renderer/pepper/ppb_tcp_server_socket_private_impl.h"
 
 #include "base/logging.h"
-#include "webkit/plugins/ppapi/host_globals.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
-#include "webkit/plugins/ppapi/ppb_tcp_socket_private_impl.h"
-#include "webkit/plugins/ppapi/resource_helper.h"
+#include "content/renderer/pepper/host_globals.h"
+#include "content/renderer/pepper/plugin_delegate.h"
+#include "content/renderer/pepper/ppb_tcp_socket_private_impl.h"
+#include "content/renderer/pepper/resource_helper.h"
 
 namespace webkit {
 namespace ppapi {
diff --git a/webkit/plugins/ppapi/ppb_tcp_server_socket_private_impl.h b/content/renderer/pepper/ppb_tcp_server_socket_private_impl.h
similarity index 83%
rename from webkit/plugins/ppapi/ppb_tcp_server_socket_private_impl.h
rename to content/renderer/pepper/ppb_tcp_server_socket_private_impl.h
index f621e1cb..f048c7b6 100644
--- a/webkit/plugins/ppapi/ppb_tcp_server_socket_private_impl.h
+++ b/content/renderer/pepper/ppb_tcp_server_socket_private_impl.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_PPB_TCP_SERVER_SOCKET_PRIVATE_IMPL_H_
-#define WEBKIT_PLUGINS_PPAPI_PPB_TCP_SERVER_SOCKET_PRIVATE_IMPL_H_
+#ifndef CONTENT_RENDERER_PEPPER_PPB_TCP_SERVER_SOCKET_PRIVATE_IMPL_H_
+#define CONTENT_RENDERER_PEPPER_PPB_TCP_SERVER_SOCKET_PRIVATE_IMPL_H_
 
 #include "base/compiler_specific.h"
 #include "ppapi/shared_impl/private/ppb_tcp_server_socket_shared.h"
@@ -37,4 +37,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_PPB_TCP_SERVER_SOCKET_PRIVATE_IMPL_H_
+#endif  // CONTENT_RENDERER_PEPPER_PPB_TCP_SERVER_SOCKET_PRIVATE_IMPL_H_
diff --git a/webkit/plugins/ppapi/ppb_tcp_socket_private_impl.cc b/content/renderer/pepper/ppb_tcp_socket_private_impl.cc
similarity index 92%
rename from webkit/plugins/ppapi/ppb_tcp_socket_private_impl.cc
rename to content/renderer/pepper/ppb_tcp_socket_private_impl.cc
index 7e5e8c7..7ebcc64 100644
--- a/webkit/plugins/ppapi/ppb_tcp_socket_private_impl.cc
+++ b/content/renderer/pepper/ppb_tcp_socket_private_impl.cc
@@ -2,13 +2,13 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/ppb_tcp_socket_private_impl.h"
+#include "content/renderer/pepper/ppb_tcp_socket_private_impl.h"
 
+#include "content/renderer/pepper/host_globals.h"
+#include "content/renderer/pepper/plugin_delegate.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
+#include "content/renderer/pepper/resource_helper.h"
 #include "ppapi/shared_impl/socket_option_data.h"
-#include "webkit/plugins/ppapi/host_globals.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
-#include "webkit/plugins/ppapi/resource_helper.h"
 
 namespace webkit {
 namespace ppapi {
diff --git a/webkit/plugins/ppapi/ppb_tcp_socket_private_impl.h b/content/renderer/pepper/ppb_tcp_socket_private_impl.h
similarity index 89%
rename from webkit/plugins/ppapi/ppb_tcp_socket_private_impl.h
rename to content/renderer/pepper/ppb_tcp_socket_private_impl.h
index 6f52d22..72950943 100644
--- a/webkit/plugins/ppapi/ppb_tcp_socket_private_impl.h
+++ b/content/renderer/pepper/ppb_tcp_socket_private_impl.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_PPB_TCP_SOCKET_PRIVATE_IMPL_H_
-#define WEBKIT_PLUGINS_PPAPI_PPB_TCP_SOCKET_PRIVATE_IMPL_H_
+#ifndef CONTENT_RENDERER_PEPPER_PPB_TCP_SOCKET_PRIVATE_IMPL_H_
+#define CONTENT_RENDERER_PEPPER_PPB_TCP_SOCKET_PRIVATE_IMPL_H_
 
 #include <vector>
 
@@ -50,4 +50,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_PPB_TCP_SOCKET_PRIVATE_IMPL_H_
+#endif  // CONTENT_RENDERER_PEPPER_PPB_TCP_SOCKET_PRIVATE_IMPL_H_
diff --git a/webkit/plugins/ppapi/ppb_uma_private_impl.cc b/content/renderer/pepper/ppb_uma_private_impl.cc
similarity index 97%
rename from webkit/plugins/ppapi/ppb_uma_private_impl.cc
rename to content/renderer/pepper/ppb_uma_private_impl.cc
index fb30a06..8468dd7 100644
--- a/webkit/plugins/ppapi/ppb_uma_private_impl.cc
+++ b/content/renderer/pepper/ppb_uma_private_impl.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/ppb_uma_private_impl.h"
+#include "content/renderer/pepper/ppb_uma_private_impl.h"
 
 #include "base/metrics/histogram.h"
 #include "ppapi/c/pp_var.h"
diff --git a/webkit/plugins/ppapi/ppb_uma_private_impl.h b/content/renderer/pepper/ppb_uma_private_impl.h
similarity index 69%
rename from webkit/plugins/ppapi/ppb_uma_private_impl.h
rename to content/renderer/pepper/ppb_uma_private_impl.h
index c563331..55a94f4 100644
--- a/webkit/plugins/ppapi/ppb_uma_private_impl.h
+++ b/content/renderer/pepper/ppb_uma_private_impl.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_PPB_UMA_PRIVATE_IMPL_H_
-#define WEBKIT_PLUGINS_PPAPI_PPB_UMA_PRIVATE_IMPL_H_
+#ifndef CONTENT_RENDERER_PEPPER_PPB_UMA_PRIVATE_IMPL_H_
+#define CONTENT_RENDERER_PEPPER_PPB_UMA_PRIVATE_IMPL_H_
 
 #include "ppapi/c/private/ppb_uma_private.h"
 
@@ -18,4 +18,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_PPB_UMA_PRIVATE_IMPL_H_
+#endif  // CONTENT_RENDERER_PEPPER_PPB_UMA_PRIVATE_IMPL_H_
diff --git a/webkit/plugins/ppapi/ppb_var_deprecated_impl.cc b/content/renderer/pepper/ppb_var_deprecated_impl.cc
similarity index 96%
rename from webkit/plugins/ppapi/ppb_var_deprecated_impl.cc
rename to content/renderer/pepper/ppb_var_deprecated_impl.cc
index fa5c386..cbfc6f9 100644
--- a/webkit/plugins/ppapi/ppb_var_deprecated_impl.cc
+++ b/content/renderer/pepper/ppb_var_deprecated_impl.cc
@@ -2,23 +2,23 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/ppb_var_deprecated_impl.h"
+#include "content/renderer/pepper/ppb_var_deprecated_impl.h"
 
 #include <limits>
 
+#include "content/renderer/pepper/common.h"
+#include "content/renderer/pepper/host_globals.h"
+#include "content/renderer/pepper/npapi_glue.h"
+#include "content/renderer/pepper/npobject_var.h"
+#include "content/renderer/pepper/plugin_module.h"
+#include "content/renderer/pepper/plugin_object.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
 #include "ppapi/c/dev/ppb_var_deprecated.h"
 #include "ppapi/c/ppb_var.h"
 #include "ppapi/c/pp_var.h"
 #include "ppapi/shared_impl/ppb_var_shared.h"
 #include "third_party/WebKit/public/web/WebBindings.h"
 #include "third_party/WebKit/public/web/WebScopedUserGesture.h"
-#include "webkit/plugins/ppapi/common.h"
-#include "webkit/plugins/ppapi/host_globals.h"
-#include "webkit/plugins/ppapi/npapi_glue.h"
-#include "webkit/plugins/ppapi/npobject_var.h"
-#include "webkit/plugins/ppapi/plugin_module.h"
-#include "webkit/plugins/ppapi/plugin_object.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
 
 using ppapi::NPObjectVar;
 using ppapi::PpapiGlobals;
diff --git a/webkit/plugins/ppapi/ppb_var_deprecated_impl.h b/content/renderer/pepper/ppb_var_deprecated_impl.h
similarity index 68%
rename from webkit/plugins/ppapi/ppb_var_deprecated_impl.h
rename to content/renderer/pepper/ppb_var_deprecated_impl.h
index 5e12400c..459acfa 100644
--- a/webkit/plugins/ppapi/ppb_var_deprecated_impl.h
+++ b/content/renderer/pepper/ppb_var_deprecated_impl.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_PPB_VAR_DEPRECATED_IMPL_H_
-#define WEBKIT_PLUGINS_PPAPI_PPB_VAR_DEPRECATED_IMPL_H_
+#ifndef CONTENT_RENDERER_PEPPER_PPB_VAR_DEPRECATED_IMPL_H_
+#define CONTENT_RENDERER_PEPPER_PPB_VAR_DEPRECATED_IMPL_H_
 
 struct PPB_Var_Deprecated;
 
@@ -18,4 +18,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_PPB_VAR_DEPRECATED_IMPL_H_
+#endif  // CONTENT_RENDERER_PEPPER_PPB_VAR_DEPRECATED_IMPL_H_
diff --git a/webkit/plugins/ppapi/ppb_video_decoder_impl.cc b/content/renderer/pepper/ppb_video_decoder_impl.cc
similarity index 96%
rename from webkit/plugins/ppapi/ppb_video_decoder_impl.cc
rename to content/renderer/pepper/ppb_video_decoder_impl.cc
index a8a5217..c71f618 100644
--- a/webkit/plugins/ppapi/ppb_video_decoder_impl.cc
+++ b/content/renderer/pepper/ppb_video_decoder_impl.cc
@@ -2,13 +2,18 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/ppb_video_decoder_impl.h"
+#include "content/renderer/pepper/ppb_video_decoder_impl.h"
 
 #include <string>
 
 #include "base/logging.h"
 #include "base/message_loop/message_loop.h"
 #include "base/metrics/histogram.h"
+#include "content/renderer/pepper/common.h"
+#include "content/renderer/pepper/plugin_module.h"
+#include "content/renderer/pepper/ppb_buffer_impl.h"
+#include "content/renderer/pepper/ppb_graphics_3d_impl.h"
+#include "content/renderer/pepper/resource_helper.h"
 #include "gpu/command_buffer/client/gles2_implementation.h"
 #include "media/video/picture.h"
 #include "media/video/video_decode_accelerator.h"
@@ -19,11 +24,6 @@
 #include "ppapi/c/pp_errors.h"
 #include "ppapi/shared_impl/resource_tracker.h"
 #include "ppapi/thunk/enter.h"
-#include "webkit/plugins/ppapi/common.h"
-#include "webkit/plugins/ppapi/plugin_module.h"
-#include "webkit/plugins/ppapi/ppb_buffer_impl.h"
-#include "webkit/plugins/ppapi/ppb_graphics_3d_impl.h"
-#include "webkit/plugins/ppapi/resource_helper.h"
 
 using ppapi::TrackedCallback;
 using ppapi::thunk::EnterResourceNoLock;
diff --git a/webkit/plugins/ppapi/ppb_video_decoder_impl.h b/content/renderer/pepper/ppb_video_decoder_impl.h
similarity index 92%
rename from webkit/plugins/ppapi/ppb_video_decoder_impl.h
rename to content/renderer/pepper/ppb_video_decoder_impl.h
index ea29305..d2d07b8 100644
--- a/webkit/plugins/ppapi/ppb_video_decoder_impl.h
+++ b/content/renderer/pepper/ppb_video_decoder_impl.h
@@ -2,19 +2,19 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_PPB_VIDEO_DECODER_IMPL_H_
-#define WEBKIT_PLUGINS_PPAPI_PPB_VIDEO_DECODER_IMPL_H_
+#ifndef CONTENT_RENDERER_PEPPER_PPB_VIDEO_DECODER_IMPL_H_
+#define CONTENT_RENDERER_PEPPER_PPB_VIDEO_DECODER_IMPL_H_
 
 #include "base/basictypes.h"
 #include "base/compiler_specific.h"
 #include "base/memory/ref_counted.h"
+#include "content/renderer/pepper/plugin_delegate.h"
 #include "ppapi/c/dev/pp_video_dev.h"
 #include "ppapi/c/dev/ppp_video_decoder_dev.h"
 #include "ppapi/c/pp_var.h"
 #include "ppapi/shared_impl/ppb_video_decoder_shared.h"
 #include "ppapi/shared_impl/resource.h"
 #include "ppapi/thunk/ppb_video_decoder_api.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
 
 struct PP_PictureBuffer_Dev;
 struct PP_VideoBitstreamBuffer_Dev;
@@ -31,7 +31,6 @@
 class PPB_VideoDecoder_Impl : public ::ppapi::PPB_VideoDecoder_Shared,
                               public media::VideoDecodeAccelerator::Client {
  public:
-  virtual ~PPB_VideoDecoder_Impl();
   // See PPB_VideoDecoder_Dev::Create.  Returns 0 on failure to create &
   // initialize.
   static PP_Resource Create(PP_Instance instance,
@@ -65,6 +64,8 @@
   virtual void NotifyResetDone() OVERRIDE;
 
  private:
+  virtual ~PPB_VideoDecoder_Impl();
+
   explicit PPB_VideoDecoder_Impl(PP_Instance instance);
   bool Init(PP_Resource graphics_context,
             PluginDelegate::PlatformContext3D* context,
@@ -84,4 +85,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_PPB_VIDEO_DECODER_IMPL_H_
+#endif  // CONTENT_RENDERER_PEPPER_PPB_VIDEO_DECODER_IMPL_H_
diff --git a/webkit/plugins/ppapi/ppb_widget_impl.cc b/content/renderer/pepper/ppb_widget_impl.cc
similarity index 88%
rename from webkit/plugins/ppapi/ppb_widget_impl.cc
rename to content/renderer/pepper/ppb_widget_impl.cc
index ec21bea4..5854f01 100644
--- a/webkit/plugins/ppapi/ppb_widget_impl.cc
+++ b/content/renderer/pepper/ppb_widget_impl.cc
@@ -2,16 +2,16 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/ppb_widget_impl.h"
+#include "content/renderer/pepper/ppb_widget_impl.h"
 
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
+#include "content/renderer/pepper/ppb_image_data_impl.h"
+#include "content/renderer/pepper/plugin_module.h"
+#include "content/renderer/pepper/resource_helper.h"
 #include "ppapi/c/dev/ppp_widget_dev.h"
 #include "ppapi/thunk/enter.h"
 #include "ppapi/thunk/ppb_input_event_api.h"
 #include "ppapi/thunk/ppb_widget_api.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
-#include "webkit/plugins/ppapi/ppb_image_data_impl.h"
-#include "webkit/plugins/ppapi/plugin_module.h"
-#include "webkit/plugins/ppapi/resource_helper.h"
 
 using ppapi::thunk::EnterResourceNoLock;
 using ppapi::thunk::PPB_ImageData_API;
diff --git a/webkit/plugins/ppapi/ppb_widget_impl.h b/content/renderer/pepper/ppb_widget_impl.h
similarity index 91%
rename from webkit/plugins/ppapi/ppb_widget_impl.h
rename to content/renderer/pepper/ppb_widget_impl.h
index 7fd143ee..7b1e950 100644
--- a/webkit/plugins/ppapi/ppb_widget_impl.h
+++ b/content/renderer/pepper/ppb_widget_impl.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_PPB_WIDGET_IMPL_H_
-#define WEBKIT_PLUGINS_PPAPI_PPB_WIDGET_IMPL_H_
+#ifndef CONTENT_RENDERER_PEPPER_PPB_WIDGET_IMPL_H_
+#define CONTENT_RENDERER_PEPPER_PPB_WIDGET_IMPL_H_
 
 #include "base/basictypes.h"
 #include "base/compiler_specific.h"
@@ -27,7 +27,6 @@
                         public ::ppapi::thunk::PPB_Widget_API {
  public:
   explicit PPB_Widget_Impl(PP_Instance instance);
-  virtual ~PPB_Widget_Impl();
 
   // Resource overrides.
   virtual ::ppapi::thunk::PPB_Widget_API* AsPPB_Widget_API() OVERRIDE;
@@ -43,6 +42,8 @@
   void Invalidate(const PP_Rect* dirty);
 
  protected:
+  virtual ~PPB_Widget_Impl();
+
   virtual PP_Bool PaintInternal(const gfx::Rect& rect,
                                 PPB_ImageData_Impl* image) = 0;
   virtual PP_Bool HandleEventInternal(const ::ppapi::InputEventData& data) = 0;
@@ -61,4 +62,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_PPB_WIDGET_IMPL_H_
+#endif  // CONTENT_RENDERER_PEPPER_PPB_WIDGET_IMPL_H_
diff --git a/webkit/plugins/ppapi/ppb_x509_certificate_private_impl.cc b/content/renderer/pepper/ppb_x509_certificate_private_impl.cc
similarity index 84%
rename from webkit/plugins/ppapi/ppb_x509_certificate_private_impl.cc
rename to content/renderer/pepper/ppb_x509_certificate_private_impl.cc
index 309142d..0b848d2 100644
--- a/webkit/plugins/ppapi/ppb_x509_certificate_private_impl.cc
+++ b/content/renderer/pepper/ppb_x509_certificate_private_impl.cc
@@ -2,10 +2,10 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/ppb_x509_certificate_private_impl.h"
+#include "content/renderer/pepper/ppb_x509_certificate_private_impl.h"
 
-#include "webkit/plugins/ppapi/plugin_delegate.h"
-#include "webkit/plugins/ppapi/resource_helper.h"
+#include "content/renderer/pepper/plugin_delegate.h"
+#include "content/renderer/pepper/resource_helper.h"
 
 namespace webkit {
 namespace ppapi {
diff --git a/webkit/plugins/ppapi/ppb_x509_certificate_private_impl.h b/content/renderer/pepper/ppb_x509_certificate_private_impl.h
similarity index 82%
rename from webkit/plugins/ppapi/ppb_x509_certificate_private_impl.h
rename to content/renderer/pepper/ppb_x509_certificate_private_impl.h
index 0c5949c5..6b8d856 100644
--- a/webkit/plugins/ppapi/ppb_x509_certificate_private_impl.h
+++ b/content/renderer/pepper/ppb_x509_certificate_private_impl.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_PPB_X509_CERTIFICATE_PRIVATE_IMPL_H_
-#define WEBKIT_PLUGINS_PPAPI_PPB_X509_CERTIFICATE_PRIVATE_IMPL_H_
+#ifndef CONTENT_RENDERER_PEPPER_PPB_X509_CERTIFICATE_PRIVATE_IMPL_H_
+#define CONTENT_RENDERER_PEPPER_PPB_X509_CERTIFICATE_PRIVATE_IMPL_H_
 
 #include "base/basictypes.h"
 #include "base/compiler_specific.h"
@@ -34,4 +34,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_PPB_X509_CERTIFICATE_PRIVATE_IMPL_H_
+#endif  // CONTENT_RENDERER_PEPPER_PPB_X509_CERTIFICATE_PRIVATE_IMPL_H_
diff --git a/webkit/plugins/ppapi/ppp_pdf.h b/content/renderer/pepper/ppp_pdf.h
similarity index 88%
rename from webkit/plugins/ppapi/ppp_pdf.h
rename to content/renderer/pepper/ppp_pdf.h
index 9f4cfcd2..6ad67bf3 100644
--- a/webkit/plugins/ppapi/ppp_pdf.h
+++ b/content/renderer/pepper/ppp_pdf.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_PPP_PDF_H_
-#define WEBKIT_PLUGINS_PPAPI_PPP_PDF_H_
+#ifndef CONTENT_RENDERER_PEPPER_PPP_PDF_H_
+#define CONTENT_RENDERER_PEPPER_PPP_PDF_H_
 
 #include "ppapi/c/pp_instance.h"
 #include "ppapi/c/pp_point.h"
@@ -31,4 +31,4 @@
 
 typedef PPP_Pdf_1 PPP_Pdf;
 
-#endif  // WEBKIT_PLUGINS_PPAPI_PPP_PDF_H_
+#endif  // CONTENT_RENDERER_PEPPER_PPP_PDF_H_
diff --git a/webkit/plugins/ppapi/quota_file_io.cc b/content/renderer/pepper/quota_file_io.cc
similarity index 97%
rename from webkit/plugins/ppapi/quota_file_io.cc
rename to content/renderer/pepper/quota_file_io.cc
index 3a95e30..64d26a9d 100644
--- a/webkit/plugins/ppapi/quota_file_io.cc
+++ b/content/renderer/pepper/quota_file_io.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/quota_file_io.h"
+#include "content/renderer/pepper/quota_file_io.h"
 
 #include <algorithm>
 
@@ -12,9 +12,9 @@
 #include "base/message_loop/message_loop_proxy.h"
 #include "base/stl_util.h"
 #include "base/task_runner_util.h"
-#include "webkit/plugins/ppapi/host_globals.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
-#include "webkit/plugins/ppapi/resource_helper.h"
+#include "content/renderer/pepper/host_globals.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
+#include "content/renderer/pepper/resource_helper.h"
 
 using base::PlatformFile;
 using base::PlatformFileError;
diff --git a/webkit/plugins/ppapi/quota_file_io.h b/content/renderer/pepper/quota_file_io.h
similarity index 74%
rename from webkit/plugins/ppapi/quota_file_io.h
rename to content/renderer/pepper/quota_file_io.h
index 8ba5f423..7c95464 100644
--- a/webkit/plugins/ppapi/quota_file_io.h
+++ b/content/renderer/pepper/quota_file_io.h
@@ -2,19 +2,19 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_QUOTA_FILE_IO_H_
-#define WEBKIT_PLUGINS_PPAPI_QUOTA_FILE_IO_H_
+#ifndef CONTENT_RENDERER_PEPPER_QUOTA_FILE_IO_H_
+#define CONTENT_RENDERER_PEPPER_QUOTA_FILE_IO_H_
 
 #include <deque>
 
 #include "base/files/file_util_proxy.h"
 #include "base/memory/weak_ptr.h"
 #include "base/platform_file.h"
+#include "content/common/content_export.h"
 #include "ppapi/c/pp_file_info.h"
 #include "ppapi/c/pp_instance.h"
 #include "url/gurl.h"
 #include "webkit/common/quota/quota_types.h"
-#include "webkit/plugins/webkit_plugins_export.h"
 
 namespace webkit {
 namespace ppapi {
@@ -29,11 +29,11 @@
   typedef base::FileUtilProxy::WriteCallback WriteCallback;
   typedef base::FileUtilProxy::StatusCallback StatusCallback;
 
-  WEBKIT_PLUGINS_EXPORT QuotaFileIO(PP_Instance instance,
-                                    base::PlatformFile file,
-                                    const GURL& path_url,
-                                    PP_FileSystemType type);
-  WEBKIT_PLUGINS_EXPORT ~QuotaFileIO();
+  CONTENT_EXPORT QuotaFileIO(PP_Instance instance,
+                             base::PlatformFile file,
+                             const GURL& path_url,
+                             PP_FileSystemType type);
+  CONTENT_EXPORT ~QuotaFileIO();
 
   // Performs write or setlength operation with quota checks.
   // Returns true when the operation is successfully dispatched.
@@ -45,18 +45,18 @@
   // SetLength/WillSetLength cannot be called while there're any in-flight
   // operations.  For Write/WillWrite it is guaranteed that |callback| are
   // always dispatched in the same order as Write being called.
-  WEBKIT_PLUGINS_EXPORT bool Write(int64_t offset,
-                                   const char* buffer,
-                                   int32_t bytes_to_write,
-                                   const WriteCallback& callback);
-  WEBKIT_PLUGINS_EXPORT bool WillWrite(int64_t offset,
-                                       int32_t bytes_to_write,
-                                       const WriteCallback& callback);
+  CONTENT_EXPORT bool Write(int64_t offset,
+                            const char* buffer,
+                            int32_t bytes_to_write,
+                            const WriteCallback& callback);
+  CONTENT_EXPORT bool WillWrite(int64_t offset,
+                                int32_t bytes_to_write,
+                                const WriteCallback& callback);
 
-  WEBKIT_PLUGINS_EXPORT bool SetLength(int64_t length,
-                                       const StatusCallback& callback);
-  WEBKIT_PLUGINS_EXPORT bool WillSetLength(int64_t length,
-                                           const StatusCallback& callback);
+  CONTENT_EXPORT bool SetLength(int64_t length,
+                                const StatusCallback& callback);
+  CONTENT_EXPORT bool WillSetLength(int64_t length,
+                                    const StatusCallback& callback);
 
   // Returns the plugin delegate or NULL if the resource has outlived the
   // instance.
@@ -114,4 +114,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_QUOTA_FILE_IO_H_
+#endif  // CONTENT_RENDERER_PEPPER_QUOTA_FILE_IO_H_
diff --git a/webkit/plugins/ppapi/quota_file_io_unittest.cc b/content/renderer/pepper/quota_file_io_unittest.cc
similarity index 97%
rename from webkit/plugins/ppapi/quota_file_io_unittest.cc
rename to content/renderer/pepper/quota_file_io_unittest.cc
index 0d3561a..ad66e52 100644
--- a/webkit/plugins/ppapi/quota_file_io_unittest.cc
+++ b/content/renderer/pepper/quota_file_io_unittest.cc
@@ -13,10 +13,10 @@
 #include "base/memory/weak_ptr.h"
 #include "base/message_loop/message_loop.h"
 #include "base/platform_file.h"
-#include "webkit/plugins/ppapi/mock_plugin_delegate.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
-#include "webkit/plugins/ppapi/ppapi_unittest.h"
-#include "webkit/plugins/ppapi/quota_file_io.h"
+#include "content/renderer/pepper/mock_plugin_delegate.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
+#include "content/renderer/pepper/ppapi_unittest.h"
+#include "content/renderer/pepper/quota_file_io.h"
 
 using base::MessageLoopProxy;
 using base::PlatformFile;
@@ -38,7 +38,8 @@
   }
   virtual ~QuotaMockPluginDelegate() {}
 
-  virtual scoped_refptr<MessageLoopProxy> GetFileThreadMessageLoopProxy() {
+  virtual scoped_refptr<MessageLoopProxy>
+      GetFileThreadMessageLoopProxy() OVERRIDE {
     return file_thread_;
   }
 
diff --git a/content/renderer/pepper/renderer_ppapi_host_impl.cc b/content/renderer/pepper/renderer_ppapi_host_impl.cc
index 18b5859a..0d6768f 100644
--- a/content/renderer/pepper/renderer_ppapi_host_impl.cc
+++ b/content/renderer/pepper/renderer_ppapi_host_impl.cc
@@ -8,11 +8,16 @@
 #include "base/logging.h"
 #include "base/process/process_handle.h"
 #include "content/common/sandbox_util.h"
+#include "content/renderer/pepper/fullscreen_container.h"
+#include "content/renderer/pepper/host_globals.h"
 #include "content/renderer/pepper/pepper_browser_connection.h"
 #include "content/renderer/pepper/pepper_graphics_2d_host.h"
 #include "content/renderer/pepper/pepper_in_process_resource_creation.h"
 #include "content/renderer/pepper/pepper_in_process_router.h"
 #include "content/renderer/pepper/pepper_plugin_delegate_impl.h"
+#include "content/renderer/pepper/plugin_delegate.h"
+#include "content/renderer/pepper/plugin_module.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
 #include "content/renderer/render_view_impl.h"
 #include "content/renderer/render_widget_fullscreen_pepper.h"
 #include "ipc/ipc_message.h"
@@ -23,11 +28,6 @@
 #include "third_party/WebKit/public/web/WebElement.h"
 #include "third_party/WebKit/public/web/WebPluginContainer.h"
 #include "ui/gfx/point.h"
-#include "webkit/plugins/ppapi/fullscreen_container.h"
-#include "webkit/plugins/ppapi/host_globals.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
-#include "webkit/plugins/ppapi/plugin_module.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
 
 using webkit::ppapi::HostGlobals;
 using webkit::ppapi::PluginInstance;
diff --git a/content/renderer/pepper/renderer_ppapi_host_impl.h b/content/renderer/pepper/renderer_ppapi_host_impl.h
index 6d0332f5..6d576f73 100644
--- a/content/renderer/pepper/renderer_ppapi_host_impl.h
+++ b/content/renderer/pepper/renderer_ppapi_host_impl.h
@@ -9,9 +9,9 @@
 #include "base/memory/scoped_ptr.h"
 #include "content/public/renderer/renderer_ppapi_host.h"
 #include "content/renderer/pepper/content_renderer_pepper_host_factory.h"
+#include "content/renderer/pepper/plugin_delegate.h"
+#include "content/renderer/pepper/plugin_module.h"
 #include "ppapi/host/ppapi_host.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
-#include "webkit/plugins/ppapi/plugin_module.h"
 
 namespace IPC {
 class Sender;
diff --git a/webkit/plugins/ppapi/resource_creation_impl.cc b/content/renderer/pepper/resource_creation_impl.cc
similarity index 90%
rename from webkit/plugins/ppapi/resource_creation_impl.cc
rename to content/renderer/pepper/resource_creation_impl.cc
index d3e3e1c..63fbe35 100644
--- a/webkit/plugins/ppapi/resource_creation_impl.cc
+++ b/content/renderer/pepper/resource_creation_impl.cc
@@ -2,29 +2,29 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/resource_creation_impl.h"
+#include "content/renderer/pepper/resource_creation_impl.h"
 
+#include "content/renderer/pepper/common.h"
+#include "content/renderer/pepper/ppb_audio_impl.h"
+#include "content/renderer/pepper/ppb_broker_impl.h"
+#include "content/renderer/pepper/ppb_buffer_impl.h"
+#include "content/renderer/pepper/ppb_file_ref_impl.h"
+#include "content/renderer/pepper/ppb_flash_message_loop_impl.h"
+#include "content/renderer/pepper/ppb_graphics_3d_impl.h"
+#include "content/renderer/pepper/ppb_image_data_impl.h"
+#include "content/renderer/pepper/ppb_network_monitor_private_impl.h"
+#include "content/renderer/pepper/ppb_scrollbar_impl.h"
+#include "content/renderer/pepper/ppb_tcp_server_socket_private_impl.h"
+#include "content/renderer/pepper/ppb_tcp_socket_private_impl.h"
+#include "content/renderer/pepper/ppb_video_decoder_impl.h"
+#include "content/renderer/pepper/ppb_x509_certificate_private_impl.h"
+#include "content/renderer/pepper/resource_helper.h"
 #include "ppapi/c/pp_size.h"
 #include "ppapi/shared_impl/ppb_audio_config_shared.h"
 #include "ppapi/shared_impl/ppb_image_data_shared.h"
 #include "ppapi/shared_impl/ppb_input_event_shared.h"
 #include "ppapi/shared_impl/ppb_resource_array_shared.h"
 #include "ppapi/shared_impl/var.h"
-#include "webkit/plugins/ppapi/common.h"
-#include "webkit/plugins/ppapi/ppb_audio_impl.h"
-#include "webkit/plugins/ppapi/ppb_broker_impl.h"
-#include "webkit/plugins/ppapi/ppb_buffer_impl.h"
-#include "webkit/plugins/ppapi/ppb_file_ref_impl.h"
-#include "webkit/plugins/ppapi/ppb_flash_message_loop_impl.h"
-#include "webkit/plugins/ppapi/ppb_graphics_3d_impl.h"
-#include "webkit/plugins/ppapi/ppb_image_data_impl.h"
-#include "webkit/plugins/ppapi/ppb_network_monitor_private_impl.h"
-#include "webkit/plugins/ppapi/ppb_scrollbar_impl.h"
-#include "webkit/plugins/ppapi/ppb_tcp_server_socket_private_impl.h"
-#include "webkit/plugins/ppapi/ppb_tcp_socket_private_impl.h"
-#include "webkit/plugins/ppapi/ppb_video_decoder_impl.h"
-#include "webkit/plugins/ppapi/ppb_x509_certificate_private_impl.h"
-#include "webkit/plugins/ppapi/resource_helper.h"
 
 using ppapi::InputEventData;
 using ppapi::PPB_InputEvent_Shared;
diff --git a/webkit/plugins/ppapi/resource_creation_impl.h b/content/renderer/pepper/resource_creation_impl.h
similarity index 94%
rename from webkit/plugins/ppapi/resource_creation_impl.h
rename to content/renderer/pepper/resource_creation_impl.h
index 53535ab..8ed7ac4 100644
--- a/webkit/plugins/ppapi/resource_creation_impl.h
+++ b/content/renderer/pepper/resource_creation_impl.h
@@ -2,13 +2,12 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_RESOURCE_CREATION_IMPL_H_
-#define WEBKIT_PLUGINS_PPAPI_RESOURCE_CREATION_IMPL_H_
+#ifndef CONTENT_RENDERER_PEPPER_RESOURCE_CREATION_IMPL_H_
+#define CONTENT_RENDERER_PEPPER_RESOURCE_CREATION_IMPL_H_
 
 #include "base/basictypes.h"
 #include "base/compiler_specific.h"
 #include "ppapi/thunk/resource_creation_api.h"
-#include "webkit/plugins/webkit_plugins_export.h"
 
 namespace webkit {
 namespace ppapi {
@@ -19,8 +18,7 @@
 // "old-style" resources are handled here. See
 // content/renderer/pepper/pepper_in_process_resource_creation.h for functions
 // that implement "new-style" resources.
-class WEBKIT_PLUGINS_EXPORT ResourceCreationImpl
-    : public NON_EXPORTED_BASE(::ppapi::thunk::ResourceCreationAPI) {
+class ResourceCreationImpl : public ::ppapi::thunk::ResourceCreationAPI {
  public:
   explicit ResourceCreationImpl(PluginInstanceImpl* instance);
   virtual ~ResourceCreationImpl();
@@ -150,4 +148,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_RESOURCE_CREATION_IMPL_H_
+#endif  // CONTENT_RENDERER_PEPPER_RESOURCE_CREATION_IMPL_H_
diff --git a/webkit/plugins/ppapi/resource_helper.cc b/content/renderer/pepper/resource_helper.cc
similarity index 82%
rename from webkit/plugins/ppapi/resource_helper.cc
rename to content/renderer/pepper/resource_helper.cc
index 7c10991..c665223 100644
--- a/webkit/plugins/ppapi/resource_helper.cc
+++ b/content/renderer/pepper/resource_helper.cc
@@ -2,13 +2,13 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/resource_helper.h"
+#include "content/renderer/pepper/resource_helper.h"
 
 #include "base/logging.h"
+#include "content/renderer/pepper/host_globals.h"
+#include "content/renderer/pepper/plugin_module.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
 #include "ppapi/shared_impl/resource.h"
-#include "webkit/plugins/ppapi/host_globals.h"
-#include "webkit/plugins/ppapi/plugin_module.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
 
 namespace webkit {
 namespace ppapi {
diff --git a/webkit/plugins/ppapi/resource_helper.h b/content/renderer/pepper/resource_helper.h
similarity index 82%
rename from webkit/plugins/ppapi/resource_helper.h
rename to content/renderer/pepper/resource_helper.h
index 11dfb86d..fa8483f 100644
--- a/webkit/plugins/ppapi/resource_helper.h
+++ b/content/renderer/pepper/resource_helper.h
@@ -2,13 +2,12 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_RESOURCE_HELPER_H_
-#define WEBKIT_PLUGINS_PPAPI_RESOURCE_HELPER_H_
+#ifndef CONTENT_RENDERER_PEPPER_RESOURCE_HELPER_H_
+#define CONTENT_RENDERER_PEPPER_RESOURCE_HELPER_H_
 
 #include "base/basictypes.h"
 #include "ppapi/c/pp_instance.h"
 #include "ppapi/c/pp_resource.h"
-#include "webkit/plugins/webkit_plugins_export.h"
 
 namespace ppapi {
 class Resource;
@@ -35,8 +34,7 @@
 
   // Returns the module for the given resource, or NULL if the resource has
   // outlived its instance.
-  WEBKIT_PLUGINS_EXPORT static PluginModule* GetPluginModule(
-      const ::ppapi::Resource* resource);
+  static PluginModule* GetPluginModule(const ::ppapi::Resource* resource);
 
   // Returns the plugin delegate for the given resource, or NULL if the
   // resource has outlived its instance.
@@ -52,4 +50,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_RESOURCE_IMPL_HELPER_H_
+#endif  // CONTENT_RENDERER_PEPPER_RESOURCE_IMPL_HELPER_H_
diff --git a/webkit/plugins/ppapi/url_request_info_util.cc b/content/renderer/pepper/url_request_info_util.cc
similarity index 95%
rename from webkit/plugins/ppapi/url_request_info_util.cc
rename to content/renderer/pepper/url_request_info_util.cc
index b9e765a..08fc0764 100644
--- a/webkit/plugins/ppapi/url_request_info_util.cc
+++ b/content/renderer/pepper/url_request_info_util.cc
@@ -2,10 +2,14 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/url_request_info_util.h"
+#include "content/renderer/pepper/url_request_info_util.h"
 
 #include "base/logging.h"
 #include "base/strings/string_util.h"
+#include "content/renderer/pepper/common.h"
+#include "content/renderer/pepper/plugin_module.h"
+#include "content/renderer/pepper/ppb_file_ref_impl.h"
+#include "content/renderer/pepper/resource_helper.h"
 #include "net/http/http_util.h"
 #include "ppapi/shared_impl/url_request_info_data.h"
 #include "ppapi/shared_impl/var.h"
@@ -19,10 +23,6 @@
 #include "url/gurl.h"
 #include "url/url_util.h"
 #include "webkit/child/weburlrequest_extradata_impl.h"
-#include "webkit/plugins/ppapi/common.h"
-#include "webkit/plugins/ppapi/plugin_module.h"
-#include "webkit/plugins/ppapi/ppb_file_ref_impl.h"
-#include "webkit/plugins/ppapi/resource_helper.h"
 
 using ppapi::URLRequestInfoData;
 using ppapi::Resource;
diff --git a/webkit/plugins/ppapi/url_request_info_util.h b/content/renderer/pepper/url_request_info_util.h
similarity index 62%
rename from webkit/plugins/ppapi/url_request_info_util.h
rename to content/renderer/pepper/url_request_info_util.h
index 4c5e110f..88cabc8 100644
--- a/webkit/plugins/ppapi/url_request_info_util.h
+++ b/content/renderer/pepper/url_request_info_util.h
@@ -2,11 +2,11 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_URL_REQUEST_INFO_UTIL_H_
-#define WEBKIT_PLUGINS_PPAPI_URL_REQUEST_INFO_UTIL_H_
+#ifndef CONTENT_RENDERER_PEPPER_URL_REQUEST_INFO_UTIL_H_
+#define CONTENT_RENDERER_PEPPER_URL_REQUEST_INFO_UTIL_H_
 
 #include "base/memory/ref_counted.h"
-#include "webkit/plugins/webkit_plugins_export.h"
+#include "content/common/content_export.h"
 
 namespace ppapi {
 struct URLRequestInfoData;
@@ -24,16 +24,15 @@
 // on success, false if the request is invalid (in which case *dest may be
 // partially initialized). Any upload files with only resource IDs (no file ref
 // pointers) will be populated by this function on success.
-WEBKIT_PLUGINS_EXPORT bool CreateWebURLRequest(
-    ::ppapi::URLRequestInfoData* data,
-    WebKit::WebFrame* frame,
-    WebKit::WebURLRequest* dest);
+CONTENT_EXPORT bool CreateWebURLRequest(::ppapi::URLRequestInfoData* data,
+                                        WebKit::WebFrame* frame,
+                                        WebKit::WebURLRequest* dest);
 
 // Returns true if universal access is required to use the given request.
-WEBKIT_PLUGINS_EXPORT bool URLRequestRequiresUniversalAccess(
+CONTENT_EXPORT bool URLRequestRequiresUniversalAccess(
     const ::ppapi::URLRequestInfoData& data);
 
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_PPB_URL_REQUEST_INFO_UTIL_H_
+#endif  // CONTENT_RENDERER_PEPPER_PPB_URL_REQUEST_INFO_UTIL_H_
diff --git a/content/renderer/pepper/url_response_info_util.cc b/content/renderer/pepper/url_response_info_util.cc
index ddfa0f2..f07a9b9 100644
--- a/content/renderer/pepper/url_response_info_util.cc
+++ b/content/renderer/pepper/url_response_info_util.cc
@@ -5,13 +5,13 @@
 #include "content/renderer/pepper/url_response_info_util.h"
 
 #include "base/files/file_path.h"
+#include "content/renderer/pepper/ppb_file_ref_impl.h"
 #include "ppapi/shared_impl/url_response_info_data.h"
 #include "third_party/WebKit/public/platform/WebCString.h"
 #include "third_party/WebKit/public/platform/WebHTTPHeaderVisitor.h"
 #include "third_party/WebKit/public/platform/WebString.h"
 #include "third_party/WebKit/public/platform/WebURL.h"
 #include "third_party/WebKit/public/platform/WebURLResponse.h"
-#include "webkit/plugins/ppapi/ppb_file_ref_impl.h"
 
 using webkit::ppapi::PPB_FileRef_Impl;
 using WebKit::WebHTTPHeaderVisitor;
diff --git a/webkit/plugins/ppapi/usb_key_code_conversion.cc b/content/renderer/pepper/usb_key_code_conversion.cc
similarity index 88%
rename from webkit/plugins/ppapi/usb_key_code_conversion.cc
rename to content/renderer/pepper/usb_key_code_conversion.cc
index b63e5c6..26404170 100644
--- a/webkit/plugins/ppapi/usb_key_code_conversion.cc
+++ b/content/renderer/pepper/usb_key_code_conversion.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/usb_key_code_conversion.h"
+#include "content/renderer/pepper/usb_key_code_conversion.h"
 
 #include "build/build_config.h"
 
diff --git a/webkit/plugins/ppapi/usb_key_code_conversion.h b/content/renderer/pepper/usb_key_code_conversion.h
similarity index 80%
rename from webkit/plugins/ppapi/usb_key_code_conversion.h
rename to content/renderer/pepper/usb_key_code_conversion.h
index fc3da16..459e662 100644
--- a/webkit/plugins/ppapi/usb_key_code_conversion.h
+++ b/content/renderer/pepper/usb_key_code_conversion.h
@@ -2,8 +2,8 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#ifndef WEBKIT_PLUGINS_PPAPI_USB_KEY_CODE_CONVERSION_H_
-#define WEBKIT_PLUGINS_PPAPI_USB_KEY_CODE_CONVERSION_H_
+#ifndef CONTENT_RENDERER_PEPPER_USB_KEY_CODE_CONVERSION_H_
+#define CONTENT_RENDERER_PEPPER_USB_KEY_CODE_CONVERSION_H_
 
 #include "ppapi/c/pp_stdint.h"
 
@@ -24,4 +24,4 @@
 }  // namespace ppapi
 }  // namespace webkit
 
-#endif  // WEBKIT_PLUGINS_PPAPI_USB_KEY_CODE_CONVERSION_H_
+#endif  // CONTENT_RENDERER_PEPPER_USB_KEY_CODE_CONVERSION_H_
diff --git a/webkit/plugins/ppapi/usb_key_code_conversion_linux.cc b/content/renderer/pepper/usb_key_code_conversion_linux.cc
similarity index 93%
rename from webkit/plugins/ppapi/usb_key_code_conversion_linux.cc
rename to content/renderer/pepper/usb_key_code_conversion_linux.cc
index 56105a9..fd5e2b1 100644
--- a/webkit/plugins/ppapi/usb_key_code_conversion_linux.cc
+++ b/content/renderer/pepper/usb_key_code_conversion_linux.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/usb_key_code_conversion.h"
+#include "content/renderer/pepper/usb_key_code_conversion.h"
 
 #include "base/basictypes.h"
 #include "third_party/WebKit/public/web/WebInputEvent.h"
diff --git a/webkit/plugins/ppapi/usb_key_code_conversion_mac.cc b/content/renderer/pepper/usb_key_code_conversion_mac.cc
similarity index 91%
rename from webkit/plugins/ppapi/usb_key_code_conversion_mac.cc
rename to content/renderer/pepper/usb_key_code_conversion_mac.cc
index 94a1e717..4f553661 100644
--- a/webkit/plugins/ppapi/usb_key_code_conversion_mac.cc
+++ b/content/renderer/pepper/usb_key_code_conversion_mac.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/usb_key_code_conversion.h"
+#include "content/renderer/pepper/usb_key_code_conversion.h"
 
 #include "base/basictypes.h"
 #include "third_party/WebKit/public/web/WebInputEvent.h"
diff --git a/webkit/plugins/ppapi/usb_key_code_conversion_win.cc b/content/renderer/pepper/usb_key_code_conversion_win.cc
similarity index 93%
rename from webkit/plugins/ppapi/usb_key_code_conversion_win.cc
rename to content/renderer/pepper/usb_key_code_conversion_win.cc
index dfef1eb6..5ef1d81e 100644
--- a/webkit/plugins/ppapi/usb_key_code_conversion_win.cc
+++ b/content/renderer/pepper/usb_key_code_conversion_win.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/usb_key_code_conversion.h"
+#include "content/renderer/pepper/usb_key_code_conversion.h"
 
 #include "base/basictypes.h"
 #include "third_party/WebKit/public/web/WebInputEvent.h"
diff --git a/webkit/plugins/ppapi/v8_var_converter.cc b/content/renderer/pepper/v8_var_converter.cc
similarity index 98%
rename from webkit/plugins/ppapi/v8_var_converter.cc
rename to content/renderer/pepper/v8_var_converter.cc
index 6a7f62e6..202a7ccd6 100644
--- a/webkit/plugins/ppapi/v8_var_converter.cc
+++ b/content/renderer/pepper/v8_var_converter.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/v8_var_converter.h"
+#include "content/renderer/pepper/v8_var_converter.h"
 
 #include <map>
 #include <stack>
@@ -11,12 +11,12 @@
 #include "base/containers/hash_tables.h"
 #include "base/logging.h"
 #include "base/memory/scoped_ptr.h"
+#include "content/renderer/pepper/host_array_buffer_var.h"
 #include "ppapi/shared_impl/array_var.h"
 #include "ppapi/shared_impl/dictionary_var.h"
 #include "ppapi/shared_impl/var.h"
 #include "ppapi/shared_impl/var_tracker.h"
 #include "third_party/WebKit/public/platform/WebArrayBuffer.h"
-#include "webkit/plugins/ppapi/host_array_buffer_var.h"
 
 using ppapi::ArrayBufferVar;
 using ppapi::ArrayVar;
diff --git a/content/renderer/pepper/v8_var_converter.h b/content/renderer/pepper/v8_var_converter.h
new file mode 100644
index 0000000..2a07bfb
--- /dev/null
+++ b/content/renderer/pepper/v8_var_converter.h
@@ -0,0 +1,35 @@
+// Copyright (c) 2013 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef CONTENT_RENDERER_PEPPER_V8_VAR_CONVERTER_H
+#define CONTENT_RENDERER_PEPPER_V8_VAR_CONVERTER_H
+
+
+#include "base/basictypes.h"
+#include "base/compiler_specific.h"
+#include "ppapi/c/pp_var.h"
+#include "v8/include/v8.h"
+#include "content/common/content_export.h"
+
+namespace webkit {
+namespace ppapi {
+namespace V8VarConverter {
+
+// Converts the given PP_Var to a v8::Value. True is returned upon success.
+bool CONTENT_EXPORT ToV8Value(const PP_Var& var,
+                              v8::Handle<v8::Context> context,
+                              v8::Handle<v8::Value>* result);
+// Converts the given v8::Value to a PP_Var. True is returned upon success.
+// Every PP_Var in the reference graph of which |result| is apart will have
+// a refcount equal to the number of references to it in the graph. |result|
+// will have one additional reference.
+bool CONTENT_EXPORT FromV8Value(v8::Handle<v8::Value> val,
+                                v8::Handle<v8::Context> context,
+                                PP_Var* result);
+
+}  // namespace V8VarConverter
+}  // namespace ppapi
+}  // namespace webkit
+
+#endif  // CONTENT_RENDERER_PEPPER_V8_VAR_CONVERTER_H
diff --git a/webkit/plugins/ppapi/v8_var_converter_unittest.cc b/content/renderer/pepper/v8_var_converter_unittest.cc
similarity index 98%
rename from webkit/plugins/ppapi/v8_var_converter_unittest.cc
rename to content/renderer/pepper/v8_var_converter_unittest.cc
index 578c6130..794c665 100644
--- a/webkit/plugins/ppapi/v8_var_converter_unittest.cc
+++ b/content/renderer/pepper/v8_var_converter_unittest.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "webkit/plugins/ppapi/v8_var_converter.h"
+#include "content/renderer/pepper/v8_var_converter.h"
 
 #include <cmath>
 
@@ -135,7 +135,7 @@
  public:
   V8VarConverterTest()
       : isolate_(v8::Isolate::GetCurrent()) {}
-  ~V8VarConverterTest() {}
+  virtual ~V8VarConverterTest() {}
 
   // testing::Test implementation.
   virtual void SetUp() {
diff --git a/content/renderer/render_widget.cc b/content/renderer/render_widget.cc
index e3976f6c..fa49316 100644
--- a/content/renderer/render_widget.cc
+++ b/content/renderer/render_widget.cc
@@ -31,6 +31,7 @@
 #include "content/renderer/gpu/mailbox_output_surface.h"
 #include "content/renderer/gpu/render_widget_compositor.h"
 #include "content/renderer/ime_event_guard.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
 #include "content/renderer/render_process.h"
 #include "content/renderer/render_process_visibility_manager.h"
 #include "content/renderer/render_thread_impl.h"
@@ -57,7 +58,6 @@
 #include "ui/gfx/skia_util.h"
 #include "ui/gl/gl_switches.h"
 #include "ui/surface/transport_dib.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
 #include "webkit/renderer/compositor_bindings/web_rendering_stats_impl.h"
 #include "webkit/renderer/cursor_utils.h"
 
@@ -971,6 +971,7 @@
                                        &optimized_copy_rect,
                                        &dib_scale_factor);
   if (optimized_instance) {
+#if defined(ENABLE_PLUGINS)
     // This plugin can be optimize-painted and we can just ask it to paint
     // itself. We don't actually need the TransportDIB in this case.
     //
@@ -1005,6 +1006,7 @@
       if (!is_accelerated_compositing_active_)
         software_stats_.total_paint_time += paint_time;
     }
+#endif
   } else {
     // Normal painting case.
     base::TimeTicks paint_begin_ticks;
diff --git a/content/renderer/render_widget_fullscreen_pepper.cc b/content/renderer/render_widget_fullscreen_pepper.cc
index 80a6128..1eb0ff9 100644
--- a/content/renderer/render_widget_fullscreen_pepper.cc
+++ b/content/renderer/render_widget_fullscreen_pepper.cc
@@ -14,6 +14,8 @@
 #include "content/public/common/content_switches.h"
 #include "content/renderer/gpu/render_widget_compositor.h"
 #include "content/renderer/pepper/pepper_platform_context_3d_impl.h"
+#include "content/renderer/pepper/plugin_delegate.h"
+#include "content/renderer/pepper/ppapi_plugin_instance_impl.h"
 #include "content/renderer/render_thread_impl.h"
 #include "gpu/command_buffer/client/gles2_implementation.h"
 #include "skia/ext/platform_canvas.h"
@@ -25,8 +27,6 @@
 #include "third_party/WebKit/public/web/WebWidget.h"
 #include "ui/gfx/size_conversions.h"
 #include "ui/gl/gpu_preference.h"
-#include "webkit/plugins/ppapi/plugin_delegate.h"
-#include "webkit/plugins/ppapi/ppapi_plugin_instance_impl.h"
 
 using WebKit::WebCanvas;
 using WebKit::WebCompositionUnderline;
diff --git a/content/renderer/render_widget_fullscreen_pepper.h b/content/renderer/render_widget_fullscreen_pepper.h
index 9e54548..840a979e0 100644
--- a/content/renderer/render_widget_fullscreen_pepper.h
+++ b/content/renderer/render_widget_fullscreen_pepper.h
@@ -7,9 +7,9 @@
 
 #include "base/memory/scoped_ptr.h"
 #include "content/renderer/mouse_lock_dispatcher.h"
+#include "content/renderer/pepper/fullscreen_container.h"
 #include "content/renderer/render_widget_fullscreen.h"
 #include "third_party/WebKit/public/web/WebWidget.h"
-#include "webkit/plugins/ppapi/fullscreen_container.h"
 
 namespace webkit {
 namespace ppapi {
diff --git a/content/renderer/renderer_main.cc b/content/renderer/renderer_main.cc
index 5c59ad1..5d34342 100644
--- a/content/renderer/renderer_main.cc
+++ b/content/renderer/renderer_main.cc
@@ -28,13 +28,13 @@
 #include "content/public/common/main_function_params.h"
 #include "content/public/renderer/content_renderer_client.h"
 #include "content/renderer/browser_plugin/browser_plugin_manager_impl.h"
+#include "content/renderer/pepper/ppapi_interface_factory.h"
 #include "content/renderer/render_process_impl.h"
 #include "content/renderer/render_thread_impl.h"
 #include "content/renderer/renderer_main_platform_delegate.h"
 #include "ui/base/ui_base_switches.h"
 #include "webkit/child/webkit_child_helpers.h"
 #include "webkit/glue/webkit_glue.h"
-#include "webkit/plugins/ppapi/ppapi_interface_factory.h"
 
 #if defined(OS_MACOSX)
 #include <Carbon/Carbon.h>
@@ -148,9 +148,6 @@
 
   RendererMainPlatformDelegate platform(parameters);
 
-  webkit::ppapi::PpapiInterfaceFactoryManager* factory_manager =
-      webkit::ppapi::PpapiInterfaceFactoryManager::GetInstance();
-  factory_manager->RegisterFactory(ContentPPAPIInterfaceFactory);
 
   base::StatsCounterTimer stats_counter_timer("Content.RendererInit");
   base::StatsScope<base::StatsCounterTimer> startup_timer(stats_counter_timer);
@@ -205,6 +202,10 @@
   }
 
 #if defined(ENABLE_PLUGINS)
+  webkit::ppapi::PpapiInterfaceFactoryManager* factory_manager =
+      webkit::ppapi::PpapiInterfaceFactoryManager::GetInstance();
+  factory_manager->RegisterFactory(ContentPPAPIInterfaceFactory);
+
   // Load pepper plugins before engaging the sandbox.
   PepperPluginRegistry::GetInstance();
 #endif
diff --git a/webkit/plugins/ppapi/OWNERS b/webkit/plugins/ppapi/OWNERS
deleted file mode 100644
index fa90d19..0000000
--- a/webkit/plugins/ppapi/OWNERS
+++ /dev/null
@@ -1,7 +0,0 @@
[email protected]
[email protected]
[email protected]
[email protected]
-
-per-file usb_key_code_*[email protected]
-per-file usb_key_code_*[email protected]
diff --git a/webkit/plugins/ppapi/mock_plugin_delegate.h b/webkit/plugins/ppapi/mock_plugin_delegate.h
deleted file mode 100644
index f48d568..0000000
--- a/webkit/plugins/ppapi/mock_plugin_delegate.h
+++ /dev/null
@@ -1,197 +0,0 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef WEBKIT_PLUGINS_PPAPI_MOCK_PLUGIN_DELEGATE_H_
-#define WEBKIT_PLUGINS_PPAPI_MOCK_PLUGIN_DELEGATE_H_
-
-#include "webkit/plugins/ppapi/plugin_delegate.h"
-
-struct PP_NetAddress_Private;
-namespace ppapi { class PPB_X509Certificate_Fields; }
-
-namespace webkit {
-namespace ppapi {
-
-class MockPluginDelegate : public PluginDelegate {
- public:
-  MockPluginDelegate();
-  virtual ~MockPluginDelegate();
-
-  virtual void PluginFocusChanged(PluginInstanceImpl* instance, bool focused);
-  virtual void PluginTextInputTypeChanged(PluginInstanceImpl* instance);
-  virtual void PluginCaretPositionChanged(PluginInstanceImpl* instance);
-  virtual void PluginRequestedCancelComposition(PluginInstanceImpl* instance);
-  virtual void PluginSelectionChanged(PluginInstanceImpl* instance);
-  virtual void SimulateImeSetComposition(
-      const base::string16& text,
-      const std::vector<WebKit::WebCompositionUnderline>& underlines,
-      int selection_start,
-      int selection_end);
-  virtual void SimulateImeConfirmComposition(const base::string16& text);
-  virtual void PluginCrashed(PluginInstanceImpl* instance);
-  virtual void InstanceCreated(PluginInstanceImpl* instance);
-  virtual void InstanceDeleted(PluginInstanceImpl* instance);
-  virtual scoped_ptr< ::ppapi::thunk::ResourceCreationAPI>
-      CreateResourceCreationAPI(PluginInstanceImpl* instance);
-  virtual SkBitmap* GetSadPluginBitmap();
-  virtual WebKit::WebPlugin* CreatePluginReplacement(
-      const base::FilePath& file_path);
-  virtual PlatformImage2D* CreateImage2D(int width, int height);
-  virtual PlatformGraphics2D* GetGraphics2D(PluginInstanceImpl* instance,
-                                            PP_Resource graphics_2d);
-  virtual PlatformContext3D* CreateContext3D();
-  virtual PlatformVideoDecoder* CreateVideoDecoder(
-      media::VideoDecodeAccelerator::Client* client,
-      int32 command_buffer_route_id);
-  virtual PlatformVideoCapture* CreateVideoCapture(
-      const std::string& device_id,
-      const GURL& document_url,
-      PlatformVideoCaptureEventHandler* handler);
-  virtual uint32_t GetAudioHardwareOutputSampleRate();
-  virtual uint32_t GetAudioHardwareOutputBufferSize();
-  virtual PlatformAudioOutput* CreateAudioOutput(
-      uint32_t sample_rate,
-      uint32_t sample_count,
-      PlatformAudioOutputClient* client);
-  virtual PlatformAudioInput* CreateAudioInput(
-      const std::string& device_id,
-      const GURL& document_url,
-      uint32_t sample_rate,
-      uint32_t sample_count,
-      PlatformAudioInputClient* client);
-  virtual Broker* ConnectToBroker(PPB_Broker_Impl* client);
-  virtual void NumberOfFindResultsChanged(int identifier,
-                                          int total,
-                                          bool final_result);
-  virtual void SelectedFindResultChanged(int identifier, int index);
-  virtual bool AsyncOpenFile(const base::FilePath& path,
-                             int flags,
-                             const AsyncOpenFileCallback& callback);
-  virtual void AsyncOpenFileSystemURL(
-      const GURL& path,
-      int flags,
-      const AsyncOpenFileSystemURLCallback& callback);
-  virtual bool IsFileSystemOpened(PP_Instance instance,
-                                  PP_Resource resource) const;
-  virtual PP_FileSystemType GetFileSystemType(PP_Instance instance,
-                                              PP_Resource resource) const;
-  virtual GURL GetFileSystemRootUrl(PP_Instance instance,
-                                    PP_Resource resource) const;
-  virtual void MakeDirectory(
-      const GURL& path,
-      bool recursive,
-      const StatusCallback& callback);
-  virtual void Query(const GURL& path,
-                     const MetadataCallback& success_callback,
-                     const StatusCallback& error_callback);
-  virtual void ReadDirectoryEntries(
-      const GURL& path,
-      const ReadDirectoryCallback& success_callback,
-      const StatusCallback& error_callback);
-  virtual void Touch(const GURL& path,
-                     const base::Time& last_access_time,
-                     const base::Time& last_modified_time,
-                     const StatusCallback& callback);
-  virtual void SetLength(const GURL& path,
-                         int64_t length,
-                         const StatusCallback& callback);
-  virtual void Delete(const GURL& path,
-                      const StatusCallback& callback);
-  virtual void Rename(const GURL& file_path,
-                      const GURL& new_file_path,
-                      const StatusCallback& callback);
-  virtual void ReadDirectory(
-      const GURL& directory_path,
-      const ReadDirectoryCallback& success_callback,
-      const StatusCallback& error_callback);
-  virtual void QueryAvailableSpace(const GURL& origin,
-                                   quota::StorageType type,
-                                   const AvailableSpaceCallback& callback);
-  virtual void WillUpdateFile(const GURL& file_path);
-  virtual void DidUpdateFile(const GURL& file_path, int64_t delta);
-  virtual void SyncGetFileSystemPlatformPath(const GURL& url,
-                                             base::FilePath* platform_path);
-  virtual scoped_refptr<base::MessageLoopProxy>
-      GetFileThreadMessageLoopProxy();
-  virtual uint32 TCPSocketCreate();
-  virtual void TCPSocketConnect(PPB_TCPSocket_Private_Impl* socket,
-                                uint32 socket_id,
-                                const std::string& host,
-                                uint16_t port);
-  virtual void TCPSocketConnectWithNetAddress(
-      PPB_TCPSocket_Private_Impl* socket,
-      uint32 socket_id,
-      const PP_NetAddress_Private& addr);
-  virtual void TCPSocketSSLHandshake(
-      uint32 socket_id,
-      const std::string& server_name,
-      uint16_t server_port,
-      const std::vector<std::vector<char> >& trusted_certs,
-      const std::vector<std::vector<char> >& untrusted_certs);
-  virtual void TCPSocketRead(uint32 socket_id, int32_t bytes_to_read);
-  virtual void TCPSocketWrite(uint32 socket_id, const std::string& buffer);
-  virtual void TCPSocketDisconnect(uint32 socket_id);
-  virtual void TCPSocketSetOption(uint32 socket_id,
-                                  PP_TCPSocket_Option name,
-                                  const ::ppapi::SocketOptionData& value);
-  virtual void RegisterTCPSocket(PPB_TCPSocket_Private_Impl* socket,
-                                 uint32 socket_id);
-  virtual void TCPServerSocketListen(PP_Resource socket_resource,
-                                     const PP_NetAddress_Private& addr,
-                                     int32_t backlog);
-  virtual void TCPServerSocketAccept(uint32 server_socket_id);
-  virtual void TCPServerSocketStopListening(PP_Resource socket_resource,
-                                            uint32 socket_id);
-  // Add/remove a network list observer.
-  virtual bool AddNetworkListObserver(
-      webkit_glue::NetworkListObserver* observer) OVERRIDE;
-  virtual void RemoveNetworkListObserver(
-      webkit_glue::NetworkListObserver* observer) OVERRIDE;
-  virtual bool X509CertificateParseDER(
-      const std::vector<char>& der,
-      ::ppapi::PPB_X509Certificate_Fields* fields);
-  virtual FullscreenContainer* CreateFullscreenContainer(
-      PluginInstanceImpl* instance);
-  virtual gfx::Size GetScreenSize();
-  virtual std::string GetDefaultEncoding();
-  virtual void ZoomLimitsChanged(double minimum_factor,
-                                 double maximum_factor);
-  virtual void DidStartLoading();
-  virtual void DidStopLoading();
-  virtual void SetContentRestriction(int restrictions);
-  virtual void SaveURLAs(const GURL& url);
-  virtual base::SharedMemory* CreateAnonymousSharedMemory(size_t size);
-  virtual ::ppapi::Preferences GetPreferences();
-  virtual bool LockMouse(PluginInstanceImpl* instance);
-  virtual void UnlockMouse(PluginInstanceImpl* instance);
-  virtual bool IsMouseLocked(PluginInstanceImpl* instance);
-  virtual void DidChangeCursor(PluginInstanceImpl* instance,
-                               const WebKit::WebCursorInfo& cursor);
-  virtual void DidReceiveMouseEvent(PluginInstanceImpl* instance);
-  virtual void SampleGamepads(WebKit::WebGamepads* data) OVERRIDE;
-  virtual bool IsInFullscreenMode();
-  virtual bool IsPageVisible() const;
-  virtual int EnumerateDevices(PP_DeviceType_Dev type,
-                               const EnumerateDevicesCallback& callback);
-  virtual void StopEnumerateDevices(int request_id);
-  virtual IPC::PlatformFileForTransit ShareHandleWithRemote(
-      base::PlatformFile handle,
-      base::ProcessId target_process_id,
-      bool should_close_source) const;
-  virtual bool IsRunningInProcess(PP_Instance instance) const;
-  virtual void HandleDocumentLoad(PluginInstanceImpl* instance,
-                                  const WebKit::WebURLResponse& response);
-  virtual content::RendererPpapiHost* CreateExternalPluginModule(
-      scoped_refptr<PluginModule> module,
-      const base::FilePath& path,
-      ::ppapi::PpapiPermissions permissions,
-      const IPC::ChannelHandle& channel_handle,
-      base::ProcessId plugin_pid,
-      int plugin_child_id);
-};
-
-}  // namespace ppapi
-}  // namespace webkit
-
-#endif  // WEBKIT_PLUGINS_PPAPI_MOCK_PLUGIN_DELEGATE_H_
diff --git a/webkit/plugins/ppapi/v8_var_converter.h b/webkit/plugins/ppapi/v8_var_converter.h
deleted file mode 100644
index 9dcae4f8..0000000
--- a/webkit/plugins/ppapi/v8_var_converter.h
+++ /dev/null
@@ -1,35 +0,0 @@
-// Copyright (c) 2013 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef WEBKIT_PLUGINS_PPAPI_V8_VAR_CONVERTER_H
-#define WEBKIT_PLUGINS_PPAPI_V8_VAR_CONVERTER_H
-
-
-#include "base/basictypes.h"
-#include "base/compiler_specific.h"
-#include "ppapi/c/pp_var.h"
-#include "v8/include/v8.h"
-#include "webkit/plugins/webkit_plugins_export.h"
-
-namespace webkit {
-namespace ppapi {
-namespace V8VarConverter {
-
-// Converts the given PP_Var to a v8::Value. True is returned upon success.
-bool WEBKIT_PLUGINS_EXPORT ToV8Value(const PP_Var& var,
-                                     v8::Handle<v8::Context> context,
-                                     v8::Handle<v8::Value>* result);
-// Converts the given v8::Value to a PP_Var. True is returned upon success.
-// Every PP_Var in the reference graph of which |result| is apart will have
-// a refcount equal to the number of references to it in the graph. |result|
-// will have one additional reference.
-bool WEBKIT_PLUGINS_EXPORT FromV8Value(v8::Handle<v8::Value> val,
-                                       v8::Handle<v8::Context> context,
-                                       PP_Var* result);
-
-}  // namespace V8VarConverter
-}  // namespace ppapi
-}  // namespace webkit
-
-#endif  // WEBKIT_PLUGINS_PPAPI_V8_VAR_CONVERTER_H
diff --git a/webkit/plugins/webkit_plugins.gypi b/webkit/plugins/webkit_plugins.gypi
index 354f7e1..8cc2648 100644
--- a/webkit/plugins/webkit_plugins.gypi
+++ b/webkit/plugins/webkit_plugins.gypi
@@ -46,113 +46,10 @@
         # This list contains all .h, .cc, and .mm files in glue except for
         # those in the test subdirectory and those with unittest in in their
         # names.
-        '../plugins/ppapi/audio_helper.cc',
-        '../plugins/ppapi/audio_helper.h',
-        '../plugins/ppapi/common.h',
-        '../plugins/ppapi/content_decryptor_delegate.cc',
-        '../plugins/ppapi/content_decryptor_delegate.h',
-        '../plugins/ppapi/event_conversion.cc',
-        '../plugins/ppapi/event_conversion.h',
-        '../plugins/ppapi/fullscreen_container.h',
-        '../plugins/ppapi/gfx_conversion.h',
-        '../plugins/ppapi/host_array_buffer_var.cc',
-        '../plugins/ppapi/host_array_buffer_var.h',
-        '../plugins/ppapi/host_globals.cc',
-        '../plugins/ppapi/host_globals.h',
-        '../plugins/ppapi/host_var_tracker.cc',
-        '../plugins/ppapi/host_var_tracker.h',
-        '../plugins/ppapi/message_channel.cc',
-        '../plugins/ppapi/message_channel.h',
-        '../plugins/ppapi/npapi_glue.cc',
-        '../plugins/ppapi/npapi_glue.h',
-        '../plugins/ppapi/npobject_var.cc',
-        '../plugins/ppapi/npobject_var.h',
-        '../plugins/ppapi/plugin_delegate.h',
-        '../plugins/ppapi/plugin_module.cc',
-        '../plugins/ppapi/plugin_module.h',
-        '../plugins/ppapi/plugin_object.cc',
-        '../plugins/ppapi/plugin_object.h',
-        '../plugins/ppapi/ppapi_interface_factory.cc',
-        '../plugins/ppapi/ppapi_interface_factory.h',
-        '../plugins/ppapi/ppapi_plugin_instance.h',
-        '../plugins/ppapi/ppapi_plugin_instance_impl.cc',
-        '../plugins/ppapi/ppapi_plugin_instance_impl.h',
-        '../plugins/ppapi/ppapi_webplugin_impl.cc',
-        '../plugins/ppapi/ppapi_webplugin_impl.h',
-        '../plugins/ppapi/ppb_audio_impl.cc',
-        '../plugins/ppapi/ppb_audio_impl.h',
-        '../plugins/ppapi/ppb_broker_impl.cc',
-        '../plugins/ppapi/ppb_broker_impl.h',
-        '../plugins/ppapi/ppb_buffer_impl.cc',
-        '../plugins/ppapi/ppb_buffer_impl.h',
-        '../plugins/ppapi/ppb_file_ref_impl.cc',
-        '../plugins/ppapi/ppb_file_ref_impl.h',
-        '../plugins/ppapi/ppb_flash_message_loop_impl.cc',
-        '../plugins/ppapi/ppb_flash_message_loop_impl.h',
-        '../plugins/ppapi/ppb_gpu_blacklist_private_impl.cc',
-        '../plugins/ppapi/ppb_gpu_blacklist_private_impl.h',
-        '../plugins/ppapi/ppb_graphics_3d_impl.cc',
-        '../plugins/ppapi/ppb_graphics_3d_impl.h',
-        '../plugins/ppapi/ppb_image_data_impl.cc',
-        '../plugins/ppapi/ppb_image_data_impl.h',
-        '../plugins/ppapi/ppb_network_monitor_private_impl.cc',
-        '../plugins/ppapi/ppb_network_monitor_private_impl.h',
-        '../plugins/ppapi/ppb_proxy_impl.cc',
-        '../plugins/ppapi/ppb_proxy_impl.h',
-        '../plugins/ppapi/ppb_scrollbar_impl.cc',
-        '../plugins/ppapi/ppb_scrollbar_impl.h',
-        '../plugins/ppapi/ppb_tcp_server_socket_private_impl.cc',
-        '../plugins/ppapi/ppb_tcp_server_socket_private_impl.h',
-        '../plugins/ppapi/ppb_tcp_socket_private_impl.cc',
-        '../plugins/ppapi/ppb_tcp_socket_private_impl.h',
-        '../plugins/ppapi/ppb_uma_private_impl.cc',
-        '../plugins/ppapi/ppb_uma_private_impl.h',
-        '../plugins/ppapi/ppb_var_deprecated_impl.cc',
-        '../plugins/ppapi/ppb_var_deprecated_impl.h',
-        '../plugins/ppapi/ppb_video_decoder_impl.cc',
-        '../plugins/ppapi/ppb_video_decoder_impl.h',
-        '../plugins/ppapi/ppb_widget_impl.cc',
-        '../plugins/ppapi/ppb_widget_impl.h',
-        '../plugins/ppapi/ppb_x509_certificate_private_impl.cc',
-        '../plugins/ppapi/ppb_x509_certificate_private_impl.h',
-        '../plugins/ppapi/quota_file_io.cc',
-        '../plugins/ppapi/quota_file_io.h',
-        '../plugins/ppapi/resource_creation_impl.cc',
-        '../plugins/ppapi/resource_creation_impl.h',
-        '../plugins/ppapi/resource_helper.cc',
-        '../plugins/ppapi/resource_helper.h',
-        '../plugins/ppapi/url_request_info_util.cc',
-        '../plugins/ppapi/url_request_info_util.h',
-        '../plugins/ppapi/usb_key_code_conversion.h',
-        '../plugins/ppapi/usb_key_code_conversion.cc',
-        '../plugins/ppapi/usb_key_code_conversion_linux.cc',
-        '../plugins/ppapi/usb_key_code_conversion_mac.cc',
-        '../plugins/ppapi/usb_key_code_conversion_win.cc',
-        '../plugins/ppapi/v8_var_converter.cc',
-        '../plugins/ppapi/v8_var_converter.h',
         '../plugins/sad_plugin.cc',
         '../plugins/sad_plugin.h',
         '../plugins/webkit_plugins_export.h',
       ],
-      'conditions': [
-        ['enable_gpu!=1', {
-          'sources!': [
-            '../plugins/ppapi/ppb_graphics_3d_impl.cc',
-            '../plugins/ppapi/ppb_graphics_3d_impl.h',
-            '../plugins/ppapi/ppb_open_gl_es_impl.cc',
-          ],
-        }],
-        ['OS!="win"', {
-          'sources/': [['exclude', '_win\\.cc$']],
-        }, {  # else: OS=="win"
-          # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
-          'msvs_disabled_warnings': [ 4800, 4267 ],
-          'sources/': [['exclude', '_posix\\.cc$']],
-          'include_dirs': [
-            '<(DEPTH)/third_party/wtl/include',
-          ],
-        }],
-      ],
     },
   ]
 }