tree d6fe441e7d6f444ebab2027f1535133a86aae73c
parent efc2849c7dce50abe55d0491602d4771a0e3c733
author Ahmed Fakhry <afakhry@chromium.org> 1609994874 +0000
committer Chromium LUCI CQ <chromium-scoped@luci-project-accounts.iam.gserviceaccount.com> 1609994874 +0000

capture_mode: Add support for window capture

Implement the proposal presented in the design doc
http://go/window-capturing to make the
FrameSinkVideoCapturer able to record non-root windows.

tl;dr The idea is to tag the layer of the non-root window
with a unique ID (of type viz::SubtreeCaptureId) that will
result in forcing this sub layer tree into a render surface
that draw into a render pass identifiable by that ID to the
FrameSinkVideoCapturerImpl on the viz side.

BUG=1143930
TEST=- Manually.
     - Added new tests:
        - (viz_unittests) CompositorFrameSinkSupportTest.CopyRequestOnSubtree
        - (aura_unittests) WindowTest.*Capturable*
        - (ash_unittetss) CaptureModeTest.WindowRecordingCaptureId
        - (browser_tests) RecordingServiceBrowserTest.RecordWindow
        - (cc_unittests) *LayerTreeHostCaptureTest*
     - Modified many tests else where.

Change-Id: Iede1b923db391e6f390bb78a1d1aaf848ad7ab33
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2593724
Commit-Queue: Ahmed Fakhry <afakhry@chromium.org>
Reviewed-by: Scott Violet <sky@chromium.org>
Reviewed-by: kylechar <kylechar@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: danakj <danakj@chromium.org>
Reviewed-by: James Cook <jamescook@chromium.org>
Reviewed-by: Xianzhu Wang <wangxianzhu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#840924}
