• Daniele Castagna's avatar
    viz: Partial swap without readback · 62e5b068
    Daniele Castagna authored
    viz::BufferQueue currently implements partial swap reading back
    from the previously swapped buffer contents that are outside the
    current swapbuffer damage.
    
    This introduces a dependency on a GPU API, that we want to get rid
    of (crbug.com/958670).
    This technique also assumes it is safe to read back from a buffer
    that is used from another driver (crbug.com/457511).
    
    This CL removes the readback and solves the same problem exposing
    a rectangle that the compositor needs to redraw to make sure contents
    damaged during all the swapbuffers before the current one are
    recomposited.
    
    Bug: 958670, 457511
    Test: BufferQueueTest.PartialSwapCurrentBufferDamage
    
    Change-Id: I2d4a70b0122f665b68e25e043d57de6044092fc2
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1685909Reviewed-by: default avatarRobert Kroeger <rjkroege@chromium.org>
    Reviewed-by: default avatarAntoine Labour <piman@chromium.org>
    Reviewed-by: default avatarAndres Calderon Jaramillo <andrescj@chromium.org>
    Commit-Queue: Daniele Castagna <dcastagna@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#676467}
    62e5b068
buffer_queue_unittest.cc 19.6 KB