CherryPick 043a6b from master: do not merge.

Don't use OpenGL ES 2.0 to render the wallpaper on the emulator.
Bug #5352896

The emulator doesn't support OpenGL ES 2.0.

Change-Id: I3d60f8e4b5c5431e9e21471c576f4a9382f4693f
diff --git a/packages/SystemUI/src/com/android/systemui/ImageWallpaper.java b/packages/SystemUI/src/com/android/systemui/ImageWallpaper.java
index 492f3c2..bf1ec25 100644
--- a/packages/SystemUI/src/com/android/systemui/ImageWallpaper.java
+++ b/packages/SystemUI/src/com/android/systemui/ImageWallpaper.java
@@ -26,6 +26,7 @@
 import android.graphics.Rect;
 import android.graphics.Region.Op;
 import android.opengl.GLUtils;
+import android.os.SystemProperties;
 import android.renderscript.Matrix4f;
 import android.service.wallpaper.WallpaperService;
 import android.util.Log;
@@ -56,6 +57,7 @@
     private static final String TAG = "ImageWallpaper";
     private static final String GL_LOG_TAG = "ImageWallpaperGL";
     private static final boolean DEBUG = false;
+    private static final String PROPERTY_KERNEL_QEMU = "ro.kernel.qemu";
 
     static final boolean FIXED_SIZED_SURFACE = true;
     static final boolean USE_OPENGL = true;
@@ -71,12 +73,19 @@
 
         //noinspection PointlessBooleanExpression,ConstantConditions
         if (FIXED_SIZED_SURFACE && USE_OPENGL) {
-            WindowManager windowManager = (WindowManager) getSystemService(Context.WINDOW_SERVICE);
-            Display display = windowManager.getDefaultDisplay();
-            mIsHwAccelerated = ActivityManager.isHighEndGfx(display);
+            if (!isEmulator()) {
+                WindowManager windowManager =
+                        (WindowManager) getSystemService(Context.WINDOW_SERVICE);
+                Display display = windowManager.getDefaultDisplay();
+                mIsHwAccelerated = ActivityManager.isHighEndGfx(display);
+            }
         }
     }
 
+    private static boolean isEmulator() {
+        return "1".equals(SystemProperties.get(PROPERTY_KERNEL_QEMU, "0"));
+    }
+
     public Engine onCreateEngine() {
         return new DrawableEngine();
     }