Ignore HasAlphaLayer flag to fix b/30929229
BUG:30929229
Change-Id: Iebadc6b3d224efa0554cbbb99ea43f871c28722b
diff --git a/libs/hwui/SkiaCanvas.cpp b/libs/hwui/SkiaCanvas.cpp
index ce67554..c7289fc 100644
--- a/libs/hwui/SkiaCanvas.cpp
+++ b/libs/hwui/SkiaCanvas.cpp
@@ -329,9 +329,10 @@
static inline SkCanvas::SaveLayerFlags layerFlags(SaveFlags::Flags flags) {
SkCanvas::SaveLayerFlags layerFlags = 0;
- if (!(flags & SaveFlags::HasAlphaLayer)) {
- layerFlags |= SkCanvas::kIsOpaque_SaveLayerFlag;
- }
+ // We intentionally ignore the SaveFlags::HasAlphaLayer and
+ // SkCanvas::kIsOpaque_SaveLayerFlag flags because HWUI ignores it
+ // and our Android client may use it incorrectly.
+ // In Skia, this flag is purely for performance optimization.
if (!(flags & SaveFlags::ClipToLayer)) {
layerFlags |= SkCanvas::kDontClipToLayer_Legacy_SaveLayerFlag;