Chromium Code Reviews
DescriptionPrevent CompositingHelper from prematurely Satisfying Surface reference
When ChildFrameCompositingHelper::OnSetSurface receives a reference to
a new Surface, it creates a SurfaceLayer and then sends a
FrameHostMsg_SatisfySequence message to the browser to release a
temporary reference that was keeping the Surface alive in the meantime.
The SurfaceLayer creates a new reference to the Surface by sending a
FrameHostMsg_RequireSurface message, but this doesn't happen until
the SurfaceLayer is attached to the layer tree, which is not until the
next BeginMainFrame. Therefore the SurfaceManager was seeing the only
reference to the Surface satisfied before receiving another Require on
it, and this was causing OOPIF flickering during scrolling.
This CL delays when ChildFrameCompositorFrame sends the Satisfy
message, caching the SurfaceSequence until after the SurfaceLayer is
attached to the layer tree.
BUG=701175
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_site_isolation
Review-Url: https://codereview.chromium.org/2927173002
Cr-Commit-Position: refs/heads/master@{#478434}
Committed: https://chromium.googlesource.com/chromium/src/+/6ef29daef4aa32b5c744c645891ac4595bc4d073
Patch Set 1 #Patch Set 2 : Added a missing line of code #Patch Set 3 : Remove temporary code I hadn't meant to upload. #Patch Set 4 : Release a pending sequence if new one received #
Messages
Total messages: 17 (13 generated)
|
||||||||||||||||||||||||||||