SF: Apply translations to transparent region
Correctly applies translation-only transforms to the transparent
region so that it aligns with the layer bounds in screen space.
Bug: 28220791
Change-Id: If9137b873f4b89890127671d8c45745e079f1cbc
diff --git a/services/surfaceflinger/Transform.cpp b/services/surfaceflinger/Transform.cpp
index 35e7e7d..c2be91d 100644
--- a/services/surfaceflinger/Transform.cpp
+++ b/services/surfaceflinger/Transform.cpp
@@ -87,10 +87,6 @@
return mMatrix[i];
}
-bool Transform::transformed() const {
- return type() > TRANSLATE;
-}
-
float Transform::tx() const {
return mMatrix[2][0];
}
@@ -224,7 +220,7 @@
Region Transform::transform(const Region& reg) const
{
Region out;
- if (CC_UNLIKELY(transformed())) {
+ if (CC_UNLIKELY(type() > TRANSLATE)) {
if (CC_LIKELY(preserveRects())) {
Region::const_iterator it = reg.begin();
Region::const_iterator const end = reg.end();