diff options
author | jam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-09-23 02:32:55 +0000 |
---|---|---|
committer | jam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-09-23 02:32:55 +0000 |
commit | eaacd1f30dce47cbd261c950af3aa9588c753799 (patch) | |
tree | 460f6e5954276215d4bb0bf1c7ede5006df3513e /content/renderer/content_renderer_client.h | |
parent | d48989178865e7285b6c2aa4649752e5c240c5ca (diff) | |
download | chromium_src-eaacd1f30dce47cbd261c950af3aa9588c753799.zip chromium_src-eaacd1f30dce47cbd261c950af3aa9588c753799.tar.gz chromium_src-eaacd1f30dce47cbd261c950af3aa9588c753799.tar.bz2 |
Don't depend on the embedder creating a plugin. That way embedders can always provide an empty ContentRendererClient interface and still have functional rendering.
Review URL: http://codereview.chromium.org/7972018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@102427 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/renderer/content_renderer_client.h')
-rw-r--r-- | content/renderer/content_renderer_client.h | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/content/renderer/content_renderer_client.h b/content/renderer/content_renderer_client.h index 59223c1..931d65a 100644 --- a/content/renderer/content_renderer_client.h +++ b/content/renderer/content_renderer_client.h @@ -53,12 +53,14 @@ class ContentRendererClient { // Returns the default text encoding. virtual std::string GetDefaultEncoding() = 0; - // Create a plugin in the given frame. Can return NULL, in which case - // RenderView will create a plugin itself. - virtual WebKit::WebPlugin* CreatePlugin( + // Allows the embedder to override creating a plugin. If it returns true, then + // |plugin| will contain the created plugin, although it could be NULL. If it + // returns false, the content layer will create the plugin. + virtual bool OverrideCreatePlugin( RenderView* render_view, WebKit::WebFrame* frame, - const WebKit::WebPluginParams& params) = 0; + const WebKit::WebPluginParams& params, + WebKit::WebPlugin** plugin) = 0; // Give the embedder the ability to set an error page. virtual void ShowErrorPage(RenderView* render_view, |