diff options
author | backer@chromium.org <backer@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-07-13 19:35:37 +0000 |
---|---|---|
committer | backer@chromium.org <backer@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-07-13 19:35:37 +0000 |
commit | 2700dadddb63e42fad2ab8ddfee50386279e2641 (patch) | |
tree | 7ed18b44891af2f3547ba210650efd23d8ec1026 /ash/wm | |
parent | 64e612ee4be7e308a0708fef6b81171ff5c2d43f (diff) | |
download | chromium_src-2700dadddb63e42fad2ab8ddfee50386279e2641.zip chromium_src-2700dadddb63e42fad2ab8ddfee50386279e2641.tar.gz chromium_src-2700dadddb63e42fad2ab8ddfee50386279e2641.tar.bz2 |
Aura: Have ui::Layer implement WebKit::WebExternalTextureLayerClient
With --ui-enable-threaded-compositing, every Layer::SetExternalTexture() was causing a heavy CCThreadProxy::acquireLayerTextures(). This synchronization is unnecessary on the common case of buffer flips, because RWHVA handles the necessary synchronization via OnCompositingWillStart callbacks.
To reduce the synchronization burden, we handle
- wait for a commit on resize fast ACKS
- handle the common case of buffer flips via WebExternalTextureLayerClient::prepareTexture()
- and explicitly call WebExternalTextureLayer::willModifyTexture() when we need the extra synchronization on tear down.
BUG=136012
TEST=none
Review URL: https://chromiumcodereview.appspot.com/10689108
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@146621 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ash/wm')
-rw-r--r-- | ash/wm/window_animations.cc | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/ash/wm/window_animations.cc b/ash/wm/window_animations.cc index 28a2480..8faaef5 100644 --- a/ash/wm/window_animations.cc +++ b/ash/wm/window_animations.cc @@ -566,6 +566,8 @@ class CrossFadeObserver : public ui::CompositorObserver, } // ui::CompositorObserver overrides: + virtual void OnCompositingDidCommit(ui::Compositor* compositor) OVERRIDE { + } virtual void OnCompositingWillStart(ui::Compositor* compositor) OVERRIDE { } virtual void OnCompositingStarted(ui::Compositor* compositor) OVERRIDE { |