Correct bitmap merging logic

bug:10863163

This fixes two issues

The check for pure translation was incorrect. It was fixed and renamed
for clarity.

Certain matrix paths weren't setting kTypePositiveScale. For
simplicity (and because positive scale is simple to check) removed
flag in favor of dynamic checking.

Change-Id: Ic5ce235653ef49a68b8b242bd89fc2e95874ecc9
diff --git a/libs/hwui/Matrix.cpp b/libs/hwui/Matrix.cpp
index 1948778..ba22071 100644
--- a/libs/hwui/Matrix.cpp
+++ b/libs/hwui/Matrix.cpp
@@ -110,10 +110,6 @@
                 mType |= kTypeRectToRect;
             }
         }
-
-        if (m00 > 0.0f && m11 > 0.0f) {
-            mType |= kTypePositiveScale;
-        }
     }
     return mType;
 }
@@ -127,7 +123,7 @@
 }
 
 bool Matrix4::positiveScale() const {
-    return getType() & kTypePositiveScale;
+    return (data[kScaleX] > 0.0f && data[kScaleY] > 0.0f);
 }
 
 bool Matrix4::changesBounds() const {