diff options
author | stuartmorgan@chromium.org <stuartmorgan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-12-08 19:41:08 +0000 |
---|---|---|
committer | stuartmorgan@chromium.org <stuartmorgan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-12-08 19:41:08 +0000 |
commit | 1289b98a04a44eb64e74aeefa7c8affcde6ae89c (patch) | |
tree | fc2c2ff2d46c8d4e600007a900bc98a5b14c2372 /chrome/plugin/plugin_main_mac.mm | |
parent | 8156e34de05c0eb074595ff7a3d850a22269bee8 (diff) | |
download | chromium_src-1289b98a04a44eb64e74aeefa7c8affcde6ae89c.zip chromium_src-1289b98a04a44eb64e74aeefa7c8affcde6ae89c.tar.gz chromium_src-1289b98a04a44eb64e74aeefa7c8affcde6ae89c.tar.bz2 |
Add Cocoa window interposing for plugin process
Adds support for noticing window show/hide done via Cocoa APIs. Also adds interposing on a couple more Carbon calls that I came across while debugging. Refactors to make things a bit less messy:
- Moves responsibility for re-activating the browser when the last plugin window closes into the browser, to simplify that logic.
- Moves utility method for activating the plugin process into the plugin, rather than the interpose library, so the Cocoa code can use it too.
- Add a data-holder and a couple of wrapper methods to reduce code duplication in the window show/hide handling.
BUG=28009, 29321
TEST=Plugin-opened windows (Gmail attachments, full-screen Flash, etc.) should work as expected again.
Review URL: http://codereview.chromium.org/465111
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34074 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/plugin/plugin_main_mac.mm')
-rw-r--r-- | chrome/plugin/plugin_main_mac.mm | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/chrome/plugin/plugin_main_mac.mm b/chrome/plugin/plugin_main_mac.mm index af428e6..1f729a4 100644 --- a/chrome/plugin/plugin_main_mac.mm +++ b/chrome/plugin/plugin_main_mac.mm @@ -5,6 +5,7 @@ #include "base/chrome_application_mac.h" #include "base/string_util.h" #include "chrome/common/plugin_carbon_interpose_constants_mac.h" +#include "chrome/plugin/plugin_interpose_util_mac.h" void TrimInterposeEnvironment() { const char* interpose_list = @@ -39,4 +40,6 @@ void TrimInterposeEnvironment() { void InitializeChromeApplication() { [CrApplication sharedApplication]; + + mac_plugin_interposing::SetUpCocoaInterposing(); } |