Do not animate scrim when ColorFade

AOD scrims should only animate when sysui will control the screen-off
transition.

Test: manual
Test: atest packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/ScrimControllerTest.java
Bug: 77539750
Change-Id: Iba79ea09c149068e75163fabddd3608254dd83f3
diff --git a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/ScrimControllerTest.java b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/ScrimControllerTest.java
index 1e8e14d..27c00c0 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/ScrimControllerTest.java
+++ b/packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/ScrimControllerTest.java
@@ -246,7 +246,7 @@
     }
 
     @Test
-    public void scrimBlanksBeforeLeavingAoD() {
+    public void scrimBlanksBeforeLeavingAod() {
         // Simulate unlock with fingerprint
         mScrimController.transitionTo(ScrimState.AOD);
         mScrimController.finishAnimationsImmediately();
@@ -455,6 +455,20 @@
         }
     }
 
+    @Test
+    public void testAnimatesTransitionToAod() {
+        when(mDozeParamenters.shouldControlScreenOff()).thenReturn(false);
+        ScrimState.AOD.prepare(ScrimState.KEYGUARD);
+        Assert.assertFalse("No animation when ColorFade kicks in",
+                ScrimState.AOD.getAnimateChange());
+
+        reset(mDozeParamenters);
+        when(mDozeParamenters.shouldControlScreenOff()).thenReturn(true);
+        ScrimState.AOD.prepare(ScrimState.KEYGUARD);
+        Assert.assertTrue("Animate scrims when ColorFade won't be triggered",
+                ScrimState.AOD.getAnimateChange());
+    }
+
     /**
      * Conserves old notification density after leaving state and coming back.
      *