From cff176a476e0a9d9f0154d679a497fe21ed8b9ca Mon Sep 17 00:00:00 2001 From: "backer@chromium.org" Date: Fri, 29 Jun 2012 21:11:00 +0000 Subject: Aura: ACK on the start of the frame generation for greater async. By responding to AcceleratedSurfaceBuffersSwapped and AcceleratedSurfacePostSubBuffer early, we allow the GPU process to service the renderer while the browser UI is generating it's next frame. This buys us about 2 ms of processing according to chrome://tracing BUG=none TEST=none Review URL: https://chromiumcodereview.appspot.com/10692044 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@144990 0039d316-1c4b-4281-b951-d872f2087c98 --- ash/wm/window_animations.cc | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'ash') diff --git a/ash/wm/window_animations.cc b/ash/wm/window_animations.cc index 5628f0a..28a2480 100644 --- a/ash/wm/window_animations.cc +++ b/ash/wm/window_animations.cc @@ -6,6 +6,9 @@ #include +#include +#include + #include "ash/ash_switches.h" #include "ash/launcher/launcher.h" #include "ash/shell.h" @@ -192,8 +195,8 @@ class HidingWindowAnimationObserver : public ui::ImplicitAnimationObserver, // visibility to 'false' when done. This doesn't need the complexity of // HidingWindowAnimationObserver as the window isn't closing, and if it does a // HidingWindowAnimationObserver will be created. -class WorkspaceHidingWindowAnimationObserver : - public ui::ImplicitAnimationObserver { +class WorkspaceHidingWindowAnimationObserver + : public ui::ImplicitAnimationObserver { public: explicit WorkspaceHidingWindowAnimationObserver(aura::Window* window) : layer_(window->layer()) { @@ -563,6 +566,8 @@ class CrossFadeObserver : public ui::CompositorObserver, } // ui::CompositorObserver overrides: + virtual void OnCompositingWillStart(ui::Compositor* compositor) OVERRIDE { + } virtual void OnCompositingStarted(ui::Compositor* compositor) OVERRIDE { } virtual void OnCompositingEnded(ui::Compositor* compositor) OVERRIDE { -- cgit v1.1