Eliminate remaining WebCore dependencies from webplugin_impl.cc

Introduces WebPluginPageDelegate to hold the methods that only
existed on WebViewDelegate to allow WebPluginImpl to talk to the
RenderView.  This enables us to eliminate those methods from
WebViewDelegate, which eliminates the last dependency on gfx/
native_widget_types.h in our WebKit interface!

WebViewDelegate grows a CreatePlugin method that returns a
WebKit::WebPlugin.  It loses its CreatePluginDelegate method,
which now lives on WebPluginPageDelegate.

This change makes RenderView use WeakPtr when it hands itself to
each WebPluginDelegateProxy and WebPluginImpl instance.  This
makes the memory management simpler.

This change also moves various WebPlugin* interfaces defined in
webkit/glue into the webkit_glue namespace.  This was to help
reduce confusion with similarly named types in the WebKit
namespace.

WebKit::WebPluginParams is added to contain the set of parameters
used to construct a plugin.

WebPluginContainer gets a couple more methods to allow us to avoid
WebCore dependencies in WebPluginImpl.

R=jam
BUG=10036
TEST=none
Review URL: http://codereview.chromium.org/181014

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@25184 0039d316-1c4b-4281-b951-d872f2087c98


CrOS-Libchrome-Original-Commit: f103ab7a3af66f93aa6b674598ee8c977917f5f2
1 file changed
tree: 1594990fc188f81c3dff02fdf23de066914f607e
  1. base/
  2. build/
  3. ipc/
  4. testing/