diff options
author | brettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-09-23 19:46:06 +0000 |
---|---|---|
committer | brettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-09-23 19:46:06 +0000 |
commit | 1d01ed634bd4a4e3c15d89931aad1bfc62e0b6cd (patch) | |
tree | d0c01b2443bf1cb89824f906848e98426303acec /webkit/glue/plugins/pepper_plugin_module.cc | |
parent | db359dc0e51d8b28f6d93ce979cdf6e081f4211c (diff) | |
download | chromium_src-1d01ed634bd4a4e3c15d89931aad1bfc62e0b6cd.zip chromium_src-1d01ed634bd4a4e3c15d89931aad1bfc62e0b6cd.tar.gz chromium_src-1d01ed634bd4a4e3c15d89931aad1bfc62e0b6cd.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.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/3421030
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60329 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/glue/plugins/pepper_plugin_module.cc')
-rw-r--r-- | webkit/glue/plugins/pepper_plugin_module.cc | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/webkit/glue/plugins/pepper_plugin_module.cc b/webkit/glue/plugins/pepper_plugin_module.cc index 7acf06239..e43735f 100644 --- a/webkit/glue/plugins/pepper_plugin_module.cc +++ b/webkit/glue/plugins/pepper_plugin_module.cc @@ -59,6 +59,7 @@ #include "webkit/glue/plugins/pepper_plugin_instance.h" #include "webkit/glue/plugins/pepper_plugin_object.h" #include "webkit/glue/plugins/pepper_private.h" +#include "webkit/glue/plugins/pepper_private2.h" #include "webkit/glue/plugins/pepper_resource_tracker.h" #include "webkit/glue/plugins/pepper_scrollbar.h" #include "webkit/glue/plugins/pepper_transport.h" @@ -70,6 +71,7 @@ #include "webkit/glue/plugins/pepper_video_decoder.h" #include "webkit/glue/plugins/pepper_widget.h" #include "webkit/glue/plugins/ppb_private.h" +#include "webkit/glue/plugins/ppb_private2.h" #ifdef ENABLE_GPU #include "webkit/glue/plugins/pepper_graphics_3d.h" @@ -257,6 +259,8 @@ const void* GetInterface(const char* name) { return UrlUtil::GetInterface(); if (strcmp(name, PPB_PRIVATE_INTERFACE) == 0) return Private::GetInterface(); + if (strcmp(name, PPB_PRIVATE2_INTERFACE) == 0) + return Private2::GetInterface(); if (strcmp(name, PPB_FILECHOOSER_DEV_INTERFACE) == 0) return FileChooser::GetInterface(); if (strcmp(name, PPB_VIDEODECODER_DEV_INTERFACE) == 0) |