Support alpha for SurfaceView
Basically, this removes an excuse for apps to use TextureView for video playback or one-off HDR images prior to HDR UI being ready everywhere. The idea is that for Z-above, applying alpha is easy, because the surface just needs to be have alpha modulated. Z-below is a little bit more creative - the alpha is applied to the hole punch and drawn using DST_OUT blending semantics. This allows for views underneath the SurfaceView to blend with surface, while being occluded by views on top of the SurfaceView. There may need to be some complex view hierarchies that would be useful to test, but simple view layouts seem to work. Note that this is guarded with a target SDK check, to defend against applications that are propagated alpha to child views while expecting opaque SurfaceViews. Bug: 241474646 Test: HWAccelerationTest doesn't look broken Change-Id: Ibc14b18f1ce6f25250318db50275c6b8c972bade
Loading
Please register or sign in to comment