0de75f3f53
The transparent region hint is computed only from view layout locations, ignoring post-layout translation. If a SurfaceView is layed out with no other views above it, but a view is moved above it post-layout, that view's layout bounds would be subtracted from the window's transparent region instead of its drawing bounds. Prior to this change, the view would not be visible (except where its layout bounds and drawing bounds overlap). With this change, composition uses visible regions computed without regard to the transparent regions. However, if all of a layer's visible region is transparent, it will be removed from the list of layers to composite. This doesn't fix the root problem of incorrect transparent regions, and doesn't prevent bad composition in all cases. But it does avoid it for some existing apps, while still allowing the transparent region hint to save power in the important fullscreen-video-in-a-SurfaceView case. Change-Id: If2d929a10399b80401ef902abb232233a7f3d16d |
||
---|---|---|
.. | ||
powermanager | ||
surfaceflinger |