diff options
author | brettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-09-24 05:39:15 +0000 |
---|---|---|
committer | brettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-09-24 05:39:15 +0000 |
commit | ca4847f0a19f9565b6ca19fa47729bb746f5f736 (patch) | |
tree | b8dd17796537fa49e00f66b8d3f9ac8d1c90b9d8 /chrome/renderer/render_view.h | |
parent | 61b4a61bf1ea2a610c076cb28de59aa1137b3c4f (diff) | |
download | chromium_src-ca4847f0a19f9565b6ca19fa47729bb746f5f736.zip chromium_src-ca4847f0a19f9565b6ca19fa47729bb746f5f736.tar.gz chromium_src-ca4847f0a19f9565b6ca19fa47729bb746f5f736.tar.bz2 |
Add some optimizations to plugin painting.
The simplest one is to disable blending when the plugin is opaque. The more
complicated one is to bypass webkit painting the background of plugins when we
know the plugin to be always on top and also opaque. The always on top flag is
currently set by a new "Private2" API. Bypassing WebKit makes animations
faster.
This is a re-land of the previous patch with a trivial compilation fix. This
also adds a clip rect to the GetBitmap... function so we can properly handle
plugins in nested iframes with proper clipping.
BUG=none
TEST=none
Original review URL: http://codereview.chromium.org/3421030
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60426 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/renderer/render_view.h')
-rw-r--r-- | chrome/renderer/render_view.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/chrome/renderer/render_view.h b/chrome/renderer/render_view.h index f0dad4d4..f267de6 100644 --- a/chrome/renderer/render_view.h +++ b/chrome/renderer/render_view.h @@ -619,6 +619,11 @@ class RenderView : public RenderWidget, const gfx::Rect& resizer_rect); virtual void DidInitiatePaint(); virtual void DidFlushPaint(); + virtual bool GetBitmapForOptimizedPluginPaint( + const gfx::Rect& paint_bounds, + TransportDIB** dib, + gfx::Rect* location, + gfx::Rect* clip); virtual void DidHandleKeyEvent(); virtual void DidHandleMouseEvent(const WebKit::WebMouseEvent& event); virtual void OnSetFocus(bool enable); |