• Peter McNeeley's avatar
    Improved overlay strategy damage for specific contexts. · df5b05da
    Peter McNeeley authored
    In the situation of there being damage above an overlay we currently do
    not remove the damage of the underlay. A good example of where this
    occurs is the timeline controls on top of a youtube video. So instead of
    doing the smallest amount of damage (say for the seconds counter) we
    damage the entire video display region. There are other contexts for
    which the overlay damage region is not removed but in the end these all
    come down to the difficulty of subtracting damage from the incoming root
    damage.
    
    In this change we move from subtracting overlay damage to excluding it
    via the |SurfaceDamageList|. This results in much more accurate final
    damage and thus improve power usage. This change also dramatically
    reduces the complexity of previously error prone overlay damage
    subtraction computations.
    
    Finally, this change moves us closer to our goal of doing damage
    extraction on a per quad level in surface aggregator.
    See this document for more information:
     https://docs.google.com/document/d/
    1yDnz1DKcSwfMZwmeRR_RRS3QznpzqLnsMeeYIk-ORfA/edit?usp=sharing
    
    
    
    Change-Id: Ia5901546bd3982b8054b5ae9d0f397c22d7e5228
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2558918Reviewed-by: default avatarMaggie Chen <magchen@chromium.org>
    Reviewed-by: default avatarRobert Kroeger <rjkroege@chromium.org>
    Commit-Queue: Peter McNeeley <petermcneeley@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#836164}
    df5b05da
overlay_candidate.cc 17.8 KB