Changes to block NPAPI plugins in ash-metro mode
The problem is that metro mode can't handle windowed plugins, the window
appears on the desktop while the user is looking at the metro chrome.
In the stable channel (non-aura) we have different browser processes in
desktop and metro so blocking is simply checking if we are in metro
mode which we can do with a single OS call in any thread.
For aura we have a single browser process so we need to tell each
renderview if it can or cannot allow NPAPI plugins.
1) At navigation
browser:
AboutToNavigate()->PluginObserver --> message_to_renderer
renderer:
ChromeRenderViewObserver->ContentSettingsObserver->BlockNPAPIPlugins()
2) When a plugin is going to be created:
renderer:
ChromeContentRendererClient-:OverrideCreatePlugin->observer->AreNPAPIPluginsBlocked()
BUG=230127
TEST=see bug
Review URL: https://chromiumcodereview.appspot.com/14333024
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@197981 0039d316-1c4b-4281-b951-d872f2087c98
8 files changed