DescriptionDe-dupe copy requests for tab capture in DelegatedFrameHost.
Tab capture requests copies/readbacks in response to every delegated
frame swap from the renderer. These are executed in a later step, when
the browser is composited. Unfortunately, the browser may not be
composited for every render frame. This means multiple copies/readbacks
may become enqueued, each of which is expensive, and will turn out to be
completely redundant as the results will be identical. This change
detects this scenario, and de-dupes by "aborting" the older frame
subscriber callback.
BUG=464475
Committed: https://crrev.com/ddee0845cc298cbba6f9d8d6ff7fb9e06073f0e8
Cr-Commit-Position: refs/heads/master@{#319998}
Patch Set 1 : #Patch Set 2 : Fix RenderWidgetHostViewAuraCopyRequestTest.DestroyedAfterCopyRequest #Patch Set 3 : Remove redundant portion of new test. #
Total comments: 4
Patch Set 4 : Simplify by doing a little queuing in DelegatedFrameHost. #
Total comments: 11
Patch Set 5 : Addressed danakj's and hubbe's comments. #
Total comments: 2
Patch Set 6 : Minor rewording of comment in delegated_frame_host.cc to avoid confusion. #Patch Set 7 : 3 is enough! :) #
Messages
Total messages: 18 (5 generated)
|