summaryrefslogtreecommitdiff
path: root/libs/gui/BLASTBufferQueue.cpp
diff options
context:
space:
mode:
author Alec Mouri <alecmouri@google.com> 2021-12-02 15:01:48 -0800
committer Alec Mouri <alecmouri@google.com> 2021-12-07 12:30:42 -0800
commit028676ae8621c7860f036ec05238a1019f14023b (patch)
treeef042a34935376d67bd8ccb534f74aa65bb7d0d6 /libs/gui/BLASTBufferQueue.cpp
parent387b08fe8eb093e7bb0007f4ac722eb3f9e3c6f4 (diff)
Allow for solid color layers to start some candidate cached sets.
This is for letterboxed holepunch: a typical layer stack would be: 1. A solid color letterbox in back 2. A solid color layer for SurfaceView's background protection 3. A game's SurfaceView which has rounded corners One of the constraints for creating a CachedSet is that it cannot begin with a solid color layer, under the assumption that if there is an idle layer on top of a solid color layer, then those two layers should not be merged into a cached set since displaying the color layer separately is already cheap. But, for the example layer stack above, this means that there cannot be a candidate cached set behind the game's SurfaceView, meaning that there is no hole punch generated, so the game is always in client composition. So, let's remove the constraint that a CachedSet cannot start with a solid color layer for hole punches, which resolves the issue. Bug: 208780233 Test: Hill Climb Racing with letterboxed rounded corners Test: libcompositionengine_test Change-Id: Ia5bcdec363f4401b9b9738c5f6ce335497d6362b
Diffstat (limited to 'libs/gui/BLASTBufferQueue.cpp')
0 files changed, 0 insertions, 0 deletions