commit | 8af8c0e5516658a5758f32b24ff7cdd826ac23d4 | [log] [tgz] |
---|---|---|
author | Eric Seckler <[email protected]> | Wed Jan 17 23:45:53 2018 |
committer | Commit Bot <[email protected]> | Wed Jan 17 23:45:53 2018 |
tree | 1d8a17d57b9b98c5171648bd0c2e398bae560c7e | |
parent | 686c0e5a77877f10d8fe31977a702e3bc429a0ba [diff] [blame] |
headless/cc/viz: Add animate_only BeginFrame param. See design doc here: http://bit.ly/bfc-animations. The headless::CompositorController runs intermediate BeginFrames while loading a page, for which we would like to avoid doing more work than necessary. This patch adds a new animate_only BeginFrame parameter. When this param is set, only select surfaces / BeginFrameObservers receive the BeginFrame. The compositor defers main frame commits for such BeginFrames and the main frame also skips the painting lifecycle phases, which are unnecessary since the commit will be aborted. Bug: 646774 TBR: [email protected] Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2 Change-Id: I7b6aa6425461af572c62b75351d7812dd6fbedc6 Reviewed-on: https://chromium-review.googlesource.com/808964 Commit-Queue: Eric Seckler <[email protected]> Reviewed-by: Brian Salomon <[email protected]> Reviewed-by: Chris Harrelson <[email protected]> Reviewed-by: Dmitry Gozman <[email protected]> Reviewed-by: Sadrul Chowdhury <[email protected]> Reviewed-by: Tom Sepez <[email protected]> Reviewed-by: enne <[email protected]> Reviewed-by: Sami Kyöstilä <[email protected]> Cr-Commit-Position: refs/heads/master@{#529951}
diff --git a/content/renderer/gpu/render_widget_compositor.h b/content/renderer/gpu/render_widget_compositor.h index 2885499..e81f46f3 100644 --- a/content/renderer/gpu/render_widget_compositor.h +++ b/content/renderer/gpu/render_widget_compositor.h
@@ -196,7 +196,7 @@ void BeginMainFrame(const viz::BeginFrameArgs& args) override; void BeginMainFrameNotExpectedSoon() override; void BeginMainFrameNotExpectedUntil(base::TimeTicks time) override; - void UpdateLayerTreeHost() override; + void UpdateLayerTreeHost(VisualStateUpdate requested_update) override; void ApplyViewportDeltas(const gfx::Vector2dF& inner_delta, const gfx::Vector2dF& outer_delta, const gfx::Vector2dF& elastic_overscroll_delta,