diff options
author | stuartmorgan@chromium.org <stuartmorgan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-02-01 15:54:26 +0000 |
---|---|---|
committer | stuartmorgan@chromium.org <stuartmorgan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-02-01 15:54:26 +0000 |
commit | d8fd6faa7cdccb77c2d496e1ebb9d5f1b9ede717 (patch) | |
tree | 0916603cd5a2125c522bdd4d3666d4090ca5a83e /chrome/renderer/render_view.h | |
parent | 74f4183d376412c21943477c4f721b4838c01117 (diff) | |
download | chromium_src-d8fd6faa7cdccb77c2d496e1ebb9d5f1b9ede717.zip chromium_src-d8fd6faa7cdccb77c2d496e1ebb9d5f1b9ede717.tar.gz chromium_src-d8fd6faa7cdccb77c2d496e1ebb9d5f1b9ede717.tar.bz2 |
Propagate window focus changes to plugins on the Mac
This gives plugins mostly correct window activation information; there are still a few loose ends like initial focus state and changes that happen while plugins are in background tabs, but those will be handled in follow-up bugs.
BUG=31847
TEST=Plugins that are in background windows should act accordingly (e.g., Silverlight hover effects shouldn't trigger)
Review URL: http://codereview.chromium.org/549194
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37694 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/renderer/render_view.h')
-rw-r--r-- | chrome/renderer/render_view.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/chrome/renderer/render_view.h b/chrome/renderer/render_view.h index 3523238..25d598f 100644 --- a/chrome/renderer/render_view.h +++ b/chrome/renderer/render_view.h @@ -399,6 +399,11 @@ class RenderView : public RenderWidget, // Called when a plugin has crashed. void PluginCrashed(const FilePath& plugin_path); +#if defined(OS_MACOSX) + void RegisterPluginDelegate(WebPluginDelegateProxy* delegate); + void UnregisterPluginDelegate(WebPluginDelegateProxy* delegate); +#endif + // Called from JavaScript window.external.AddSearchProvider() to add a // keyword for a provider described in the given OpenSearch document. void AddSearchProvider(const std::string& url); @@ -1061,6 +1066,13 @@ class RenderView : public RenderWidget, TextTranslatorImpl text_translator_; scoped_ptr<PageTranslator> page_translator_; +#if defined(OS_MACOSX) + // All the currently active plugin delegates for this RenderView; kept so that + // we can enumerate them to send updates about things like window location + // or tab focus and visibily. These are non-owning references. + std::set<WebPluginDelegateProxy*> plugin_delegates_; +#endif + DISALLOW_COPY_AND_ASSIGN(RenderView); }; |