Loading packages/SystemUI/colorextraction/src/com/google/android/colorextraction/drawable/GradientDrawable.java +11 −0 Original line number Diff line number Diff line Loading @@ -31,6 +31,7 @@ import android.graphics.Xfermode; import android.graphics.drawable.Drawable; import android.support.annotation.NonNull; import android.support.annotation.Nullable; import android.support.annotation.VisibleForTesting; import android.support.v4.graphics.ColorUtils; import android.view.animation.DecelerateInterpolator; Loading Loading @@ -196,6 +197,16 @@ public class GradientDrawable extends Drawable { canvas.drawRect(x - radius, y - radius, x + radius, y + radius, mPaint); } @VisibleForTesting public int getMainColor() { return mMainColor; } @VisibleForTesting public int getSecondaryColor() { return mSecondaryColor; } static final class Splat { final float x; final float y; Loading packages/SystemUI/src/com/android/systemui/statusbar/ScrimView.java +6 −0 Original line number Diff line number Diff line Loading @@ -93,6 +93,7 @@ public class ScrimView extends View implements ConfigurationController.Configura mDrawable.setCallback(this); mColors = new ColorExtractor.GradientColors(); updateScreenSize(); updateColorWithTint(false); // We need to know about configuration changes to update the gradient size // since it's independent from view bounds. Loading Loading @@ -189,6 +190,11 @@ public class ScrimView extends View implements ConfigurationController.Configura return mDrawable; } @VisibleForTesting ColorExtractor.GradientColors getColors() { return mColors; } public void setTint(int color) { setTint(color, false); } Loading packages/SystemUI/tests/src/com/android/systemui/statusbar/ScrimViewTest.java +20 −19 Original line number Diff line number Diff line Loading @@ -16,39 +16,30 @@ package com.android.systemui.statusbar; import static junit.framework.Assert.assertEquals; import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.PorterDuff; import android.graphics.PorterDuffColorFilter; import android.graphics.PorterDuffXfermode; import android.graphics.Rect; import android.graphics.drawable.ColorDrawable; import android.graphics.drawable.Drawable; import android.graphics.drawable.VectorDrawable; import android.support.test.filters.SmallTest; import android.testing.AndroidTestingRunner; import android.support.test.filters.SmallTest; import android.view.View; import com.android.systemui.SysuiTestCase; import com.android.systemui.statusbar.ScrimView; import org.mockito.Mock; import org.mockito.Mockito; import org.mockito.MockitoAnnotations; import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.anyFloat; import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import static org.mockito.Mockito.mock; import com.google.android.colorextraction.ColorExtractor; import com.google.android.colorextraction.drawable.GradientDrawable; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import static junit.framework.Assert.assertEquals; @RunWith(AndroidTestingRunner.class) @SmallTest Loading @@ -70,6 +61,16 @@ public class ScrimViewTest extends SysuiTestCase { assertEquals(drawable, mView.getDrawable()); } @Test public void testCreation_initialColor() { GradientDrawable drawable = (GradientDrawable) mView.getDrawable(); ColorExtractor.GradientColors colors = mView.getColors(); assertEquals("Main color should be set upon creation", drawable.getMainColor(), colors.getMainColor()); assertEquals("Secondary color should be set upon creation", drawable.getSecondaryColor(), colors.getSecondaryColor()); } @Test public void testSetViewAlpha_propagatesToDrawable() { float alpha = 0.5f; Loading Loading
packages/SystemUI/colorextraction/src/com/google/android/colorextraction/drawable/GradientDrawable.java +11 −0 Original line number Diff line number Diff line Loading @@ -31,6 +31,7 @@ import android.graphics.Xfermode; import android.graphics.drawable.Drawable; import android.support.annotation.NonNull; import android.support.annotation.Nullable; import android.support.annotation.VisibleForTesting; import android.support.v4.graphics.ColorUtils; import android.view.animation.DecelerateInterpolator; Loading Loading @@ -196,6 +197,16 @@ public class GradientDrawable extends Drawable { canvas.drawRect(x - radius, y - radius, x + radius, y + radius, mPaint); } @VisibleForTesting public int getMainColor() { return mMainColor; } @VisibleForTesting public int getSecondaryColor() { return mSecondaryColor; } static final class Splat { final float x; final float y; Loading
packages/SystemUI/src/com/android/systemui/statusbar/ScrimView.java +6 −0 Original line number Diff line number Diff line Loading @@ -93,6 +93,7 @@ public class ScrimView extends View implements ConfigurationController.Configura mDrawable.setCallback(this); mColors = new ColorExtractor.GradientColors(); updateScreenSize(); updateColorWithTint(false); // We need to know about configuration changes to update the gradient size // since it's independent from view bounds. Loading Loading @@ -189,6 +190,11 @@ public class ScrimView extends View implements ConfigurationController.Configura return mDrawable; } @VisibleForTesting ColorExtractor.GradientColors getColors() { return mColors; } public void setTint(int color) { setTint(color, false); } Loading
packages/SystemUI/tests/src/com/android/systemui/statusbar/ScrimViewTest.java +20 −19 Original line number Diff line number Diff line Loading @@ -16,39 +16,30 @@ package com.android.systemui.statusbar; import static junit.framework.Assert.assertEquals; import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.PorterDuff; import android.graphics.PorterDuffColorFilter; import android.graphics.PorterDuffXfermode; import android.graphics.Rect; import android.graphics.drawable.ColorDrawable; import android.graphics.drawable.Drawable; import android.graphics.drawable.VectorDrawable; import android.support.test.filters.SmallTest; import android.testing.AndroidTestingRunner; import android.support.test.filters.SmallTest; import android.view.View; import com.android.systemui.SysuiTestCase; import com.android.systemui.statusbar.ScrimView; import org.mockito.Mock; import org.mockito.Mockito; import org.mockito.MockitoAnnotations; import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.anyFloat; import static org.mockito.ArgumentMatchers.anyInt; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import static org.mockito.Mockito.mock; import com.google.android.colorextraction.ColorExtractor; import com.google.android.colorextraction.drawable.GradientDrawable; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import static junit.framework.Assert.assertEquals; @RunWith(AndroidTestingRunner.class) @SmallTest Loading @@ -70,6 +61,16 @@ public class ScrimViewTest extends SysuiTestCase { assertEquals(drawable, mView.getDrawable()); } @Test public void testCreation_initialColor() { GradientDrawable drawable = (GradientDrawable) mView.getDrawable(); ColorExtractor.GradientColors colors = mView.getColors(); assertEquals("Main color should be set upon creation", drawable.getMainColor(), colors.getMainColor()); assertEquals("Secondary color should be set upon creation", drawable.getSecondaryColor(), colors.getSecondaryColor()); } @Test public void testSetViewAlpha_propagatesToDrawable() { float alpha = 0.5f; Loading