A better shadow value to cover more devices, handle TV theme override.
b/21736005
Change-Id: Idf987de51f96fa353c22e9a67fdd1c4ec4108f95
diff --git a/tests/tests/uirendering/src/android/uirendering/cts/testclasses/ShadowTests.java b/tests/tests/uirendering/src/android/uirendering/cts/testclasses/ShadowTests.java
index 878d5ae..2061023 100644
--- a/tests/tests/uirendering/src/android/uirendering/cts/testclasses/ShadowTests.java
+++ b/tests/tests/uirendering/src/android/uirendering/cts/testclasses/ShadowTests.java
@@ -27,23 +27,28 @@
public class ShadowTests extends ActivityTestBase {
@SmallTest
public void testShadowLayout() {
+ int shadowColorValue = 0xDB;
+ // Android TV theme overrides shadow opacity to be darker.
+ if (getActivity().getOnTv()) {
+ shadowColorValue = 0xBB;
+ }
+ SamplePointVerifier verifier = new SamplePointVerifier(
+ new Point[] {
+ // view area
+ new Point(25, 64),
+ new Point(64, 64),
+ // shadow area
+ new Point(25, 65),
+ new Point(64, 65)
+ },
+ new int[] {
+ Color.WHITE,
+ Color.WHITE,
+ Color.rgb(shadowColorValue, shadowColorValue, shadowColorValue),
+ Color.rgb(shadowColorValue, shadowColorValue, shadowColorValue),
+ });
createTest()
.addLayout(R.layout.simple_shadow_layout, null, true/* HW only */)
- .runWithVerifier(
- new SamplePointVerifier(
- new Point[] {
- // view area
- new Point(25, 64),
- new Point(64, 64),
- // shadow area
- new Point(25, 65),
- new Point(64, 65)
- },
- new int[] {
- Color.WHITE,
- Color.WHITE,
- Color.rgb(222, 222, 222),
- Color.rgb(222, 222, 222),
- }));
+ .runWithVerifier(verifier);
}
}
\ No newline at end of file
diff --git a/tests/tests/uirendering/src/android/uirendering/cts/testinfrastructure/DrawActivity.java b/tests/tests/uirendering/src/android/uirendering/cts/testinfrastructure/DrawActivity.java
index 4bd513a..041fcdd 100644
--- a/tests/tests/uirendering/src/android/uirendering/cts/testinfrastructure/DrawActivity.java
+++ b/tests/tests/uirendering/src/android/uirendering/cts/testinfrastructure/DrawActivity.java
@@ -17,6 +17,7 @@
import android.annotation.Nullable;
import android.app.Activity;
+import android.content.res.Configuration;
import android.graphics.Point;
import android.os.Bundle;
import android.os.Handler;
@@ -38,12 +39,19 @@
private Handler mHandler;
private View mView;
+ private boolean mOnTv;
public void onCreate(Bundle bundle){
super.onCreate(bundle);
getWindow().getDecorView().setSystemUiVisibility(
View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_FULLSCREEN);
mHandler = new RenderSpecHandler();
+ int uiMode = getResources().getConfiguration().uiMode;
+ mOnTv = (uiMode & Configuration.UI_MODE_TYPE_TELEVISION) == Configuration.UI_MODE_TYPE_TELEVISION;
+ }
+
+ public boolean getOnTv() {
+ return mOnTv;
}
public Point enqueueRenderSpecAndWait(int layoutId, CanvasClient canvasClient, String webViewUrl,