Don't enable hardware acceleration when the app owns the surface.
Bug #3323096
Change-Id: Ia8a15db844703199b3cee3d178f118159315c2b9
diff --git a/core/java/android/view/ViewRoot.java b/core/java/android/view/ViewRoot.java
index 9b897eb..366393c 100644
--- a/core/java/android/view/ViewRoot.java
+++ b/core/java/android/view/ViewRoot.java
@@ -345,8 +345,6 @@
mWindowAttributes.copyFrom(attrs);
attrs = mWindowAttributes;
- enableHardwareAcceleration(attrs);
-
if (view instanceof RootViewSurfaceTaker) {
mSurfaceHolderCallback =
((RootViewSurfaceTaker)view).willYouTakeTheSurface();
@@ -355,6 +353,12 @@
mSurfaceHolder.setFormat(PixelFormat.UNKNOWN);
}
}
+
+ // If the application owns the surface, don't enable hardware acceleration
+ if (mSurfaceHolder == null) {
+ enableHardwareAcceleration(attrs);
+ }
+
Resources resources = mView.getContext().getResources();
CompatibilityInfo compatibilityInfo = resources.getCompatibilityInfo();
mTranslator = compatibilityInfo.getTranslator();