Merge "Fix notification contrast with transparent bg" into oc-dev
am: 9b73401191

Change-Id: Iabd5160cdc09c36d7f565079f9dfd09969529c88
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/StatusBarIconView.java b/packages/SystemUI/src/com/android/systemui/statusbar/StatusBarIconView.java
index 1a47e44..89694b33 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/StatusBarIconView.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/StatusBarIconView.java
@@ -601,7 +601,8 @@
     }
 
     private void updateContrastedStaticColor() {
-        if (mCachedContrastBackgroundColor == NO_COLOR) {
+        if (Color.alpha(mCachedContrastBackgroundColor) != 255) {
+            mContrastedDrawableColor = mDrawableColor;
             return;
         }
         // We'll modify the color if it doesn't pass GAR
diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/StatusBarIconViewTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/StatusBarIconViewTest.java
index 8e7ffdf..7b2071c 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/StatusBarIconViewTest.java
+++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/StatusBarIconViewTest.java
@@ -116,5 +116,10 @@
         color = mIconView.getContrastedStaticDrawableColor(Color.WHITE);
         assertTrue("Similar colors should be shifted to satisfy contrast",
                 NotificationColorUtil.satisfiesTextContrast(Color.WHITE, color));
+
+        mIconView.setStaticDrawableColor(Color.GREEN);
+        color = mIconView.getContrastedStaticDrawableColor(0xcc000000);
+        assertEquals("Transparent backgrounds should fallback to drawable color",
+                color, mIconView.getStaticDrawableColor());
     }
 }
\ No newline at end of file