diff options
author | ojan@google.com <ojan@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-10-09 21:58:05 +0000 |
---|---|---|
committer | ojan@google.com <ojan@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-10-09 21:58:05 +0000 |
commit | 8a2820a90f85f91c500a9d382f8e8ba870fb621c (patch) | |
tree | 8d8bd23228cd1e6455e64b0de46e961947459382 /webkit/glue/webplugin_delegate.h | |
parent | 283f76091ad757bdc17c6d9090209eade4211075 (diff) | |
download | chromium_src-8a2820a90f85f91c500a9d382f8e8ba870fb621c.zip chromium_src-8a2820a90f85f91c500a9d382f8e8ba870fb621c.tar.gz chromium_src-8a2820a90f85f91c500a9d382f8e8ba870fb621c.tar.bz2 |
Patch by Thatcher Ulrich <tulrich@google.com>.
Implement "iframe shim" behavior for windowed plugins.
In FF and IE on windows, iframes are implemented as native HWNDs.
This has the side effect that iframes display on top of windowed
plugins. This side effect has long been known as a workaround for
allowing HTML elements to appear above plugin content.
BUG=1788
Review URL: http://codereview.chromium.org/7032
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@3137 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/glue/webplugin_delegate.h')
-rw-r--r-- | webkit/glue/webplugin_delegate.h | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/webkit/glue/webplugin_delegate.h b/webkit/glue/webplugin_delegate.h index 40419bd..df5716a 100644 --- a/webkit/glue/webplugin_delegate.h +++ b/webkit/glue/webplugin_delegate.h @@ -6,6 +6,7 @@ #define WEBKIT_GLUE_WEBPLUGIN_DELEGATE_H__ #include <string> +#include <vector> #include "base/basictypes.h" #include "base/gfx/native_widget_types.h" @@ -42,12 +43,17 @@ class WebPluginDelegate { // methods on the WebPlugin again. virtual void PluginDestroyed() = 0; - // Update the geometry of the plugin. This is a request to move the plugin, - // relative to its containing window, to the coords given by window_rect. - // Its contents should be clipped to the coords given by clip_rect, which are - // relative to the origin of the plugin window. + // Update the geometry of the plugin. This is a request to move the + // plugin, relative to its containing window, to the coords given by + // window_rect. Its contents should be clipped to the coords given + // by clip_rect, which are relative to the origin of the plugin + // window. It's contents should also not overlap the given cutout + // rects. The clip_rect and cutout_rects are in plugin-relative + // coordinates. virtual void UpdateGeometry(const gfx::Rect& window_rect, - const gfx::Rect& clip_rect, bool visible) = 0; + const gfx::Rect& clip_rect, + const std::vector<gfx::Rect>& cutout_rects, + bool visible) = 0; // Tells the plugin to paint the damaged rect. The HDC is only used for // windowless plugins. |