Move PluginServiceFilterParams to plugin_service_impl.h

BUG=98716
[email protected]

Review URL: https://chromiumcodereview.appspot.com/9677023

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@126294 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/content/browser/plugin_service_impl.h b/content/browser/plugin_service_impl.h
index 4b6976d3..be360750 100644
--- a/content/browser/plugin_service_impl.h
+++ b/content/browser/plugin_service_impl.h
@@ -47,10 +47,9 @@
 
 namespace content {
 class BrowserContext;
+class PluginServiceFilter;
 class ResourceContext;
 struct PepperPluginInfo;
-class PluginServiceFilter;
-struct PluginServiceFilterParams;
 }
 
 namespace webkit {
@@ -60,6 +59,15 @@
 }
 }
 
+// base::Bind() has limited arity, and the filter-related methods tend to
+// surpass that limit.
+struct PluginServiceFilterParams {
+  int render_process_id;
+  int render_view_id;
+  GURL page_url;
+  content::ResourceContext* resource_context;
+};
+
 class CONTENT_EXPORT PluginServiceImpl
     : NON_EXPORTED_BASE(public content::PluginService),
       public base::WaitableEventWatcher::Delegate,
@@ -175,7 +183,7 @@
   // Binding directly to GetAllowedPluginForOpenChannelToPlugin() isn't possible
   // because more arity is needed <http://crbug.com/98542>. This just forwards.
   void ForwardGetAllowedPluginForOpenChannelToPlugin(
-      const content::PluginServiceFilterParams& params,
+      const PluginServiceFilterParams& params,
       const GURL& url,
       const std::string& mime_type,
       PluginProcessHost::Client* client,