• ccameron's avatar
    Fix assorted issues with remote CoreAnimation · 388cc928
    ccameron authored
    These issues came up while running for a few days with the
    flag --enable-remote-core-animation.
    
    Fix flashes of old frames by hooking up the DiscardBackbuffer (which
    happens when being made non-visible) to re-set the CAContext and
    CALayer (so the browser gets a new one with new content for the next
    frame).
    
    Add support for disabling vsync by using setNeedsDisplay to draw.
    
    Change the backpressure mechanism to rely on the browser to apply
    backpressure in its compositor via the cc:: output surface.
    
    Add a ScopedSetGLToRealGLApi structure to ensure that we are talking
    to the real GL API while in the CoreAnimation callback.
    
    BUG=312462
    
    Review URL: https://codereview.chromium.org/516643002
    
    Cr-Commit-Position: refs/heads/master@{#292293}
    388cc928
compositor.h 11 KB