diff options
Diffstat (limited to 'services/java/com/android/server/wm/ScreenRotationAnimation.java')
-rw-r--r-- | services/java/com/android/server/wm/ScreenRotationAnimation.java | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/services/java/com/android/server/wm/ScreenRotationAnimation.java b/services/java/com/android/server/wm/ScreenRotationAnimation.java index 338d706..732a32d 100644 --- a/services/java/com/android/server/wm/ScreenRotationAnimation.java +++ b/services/java/com/android/server/wm/ScreenRotationAnimation.java @@ -230,14 +230,20 @@ class ScreenRotationAnimation { try { try { - if (WindowManagerService.DEBUG_SURFACE_TRACE) { - mSurface = new SurfaceTrace(session, "FreezeSurface", - mWidth, mHeight, - PixelFormat.OPAQUE, Surface.FX_SURFACE_SCREENSHOT | Surface.HIDDEN); - } else { + if (android.os.SystemProperties.get("ro.softwaregl").equals("true")) { mSurface = new Surface(session, "FreezeSurface", mWidth, mHeight, - PixelFormat.OPAQUE, Surface.FX_SURFACE_SCREENSHOT | Surface.HIDDEN); + PixelFormat.OPAQUE, Surface.FX_SURFACE_DIM | Surface.HIDDEN); + } else { + if (WindowManagerService.DEBUG_SURFACE_TRACE) { + mSurface = new SurfaceTrace(session, "FreezeSurface", + mWidth, mHeight, + PixelFormat.OPAQUE, Surface.FX_SURFACE_SCREENSHOT | Surface.HIDDEN); + } else { + mSurface = new Surface(session, "FreezeSurface", + mWidth, mHeight, + PixelFormat.OPAQUE, Surface.FX_SURFACE_SCREENSHOT | Surface.HIDDEN); + } } if (!mSurface.isValid()) { // Screenshot failed, punt. |