Loading core/java/android/view/GLES20Canvas.java +0 −12 Original line number Diff line number Diff line Loading @@ -284,18 +284,6 @@ class GLES20Canvas extends HardwareCanvas { private static native int nGetStencilSize(); void setCountOverdrawEnabled(boolean enabled) { nSetCountOverdrawEnabled(mRenderer, enabled); } static native void nSetCountOverdrawEnabled(long renderer, boolean enabled); float getOverdraw() { return nGetOverdraw(mRenderer); } static native float nGetOverdraw(long renderer); /////////////////////////////////////////////////////////////////////////// // Functor /////////////////////////////////////////////////////////////////////////// Loading core/java/android/view/GLRenderer.java +0 −70 Original line number Diff line number Diff line Loading @@ -109,9 +109,7 @@ public class GLRenderer extends HardwareRenderer { private static final String[] OVERDRAW = { OVERDRAW_PROPERTY_SHOW, OVERDRAW_PROPERTY_COUNT }; private static final int OVERDRAW_TYPE_COUNT = 1; private static final int GL_VERSION = 2; static EGL10 sEgl; Loading Loading @@ -160,8 +158,6 @@ public class GLRenderer extends HardwareRenderer { boolean mDebugDirtyRegions; int mDebugOverdraw = -1; HardwareLayer mDebugOverdrawLayer; Paint mDebugOverdrawPaint; final boolean mTranslucent; Loading Loading @@ -495,14 +491,6 @@ public class GLRenderer extends HardwareRenderer { return new GLES20RenderLayer(width, height, isOpaque); } void countOverdraw(HardwareCanvas canvas) { ((GLES20Canvas) canvas).setCountOverdrawEnabled(true); } float getOverdraw(HardwareCanvas canvas) { return ((GLES20Canvas) canvas).getOverdraw(); } @Override public SurfaceTexture createSurfaceTexture(HardwareLayer layer) { return ((GLES20TextureLayer) layer).getSurfaceTexture(); Loading Loading @@ -706,14 +694,6 @@ public class GLRenderer extends HardwareRenderer { if (debugOverdraw != mDebugOverdraw) { changed = true; mDebugOverdraw = debugOverdraw; if (mDebugOverdraw != OVERDRAW_TYPE_COUNT) { if (mDebugOverdrawLayer != null) { mDebugOverdrawLayer.destroy(); mDebugOverdrawLayer = null; mDebugOverdrawPaint = null; } } } if (loadProperties()) { Loading Loading @@ -1182,7 +1162,6 @@ public class GLRenderer extends HardwareRenderer { if (mDrawDelta > 0) { mFrameCount++; debugOverdraw(attachInfo, dirty, canvas, displayList); debugDirtyRegions(dirty, canvas); drawProfileData(attachInfo); } Loading @@ -1201,55 +1180,6 @@ public class GLRenderer extends HardwareRenderer { } } private void debugOverdraw(View.AttachInfo attachInfo, Rect dirty, HardwareCanvas canvas, DisplayList displayList) { if (mDebugOverdraw == OVERDRAW_TYPE_COUNT) { if (mDebugOverdrawLayer == null) { mDebugOverdrawLayer = createHardwareLayer(mWidth, mHeight, true); } else if (mDebugOverdrawLayer.getWidth() != mWidth || mDebugOverdrawLayer.getHeight() != mHeight) { mDebugOverdrawLayer.resize(mWidth, mHeight); } if (!mDebugOverdrawLayer.isValid()) { mDebugOverdraw = -1; return; } HardwareCanvas layerCanvas = mDebugOverdrawLayer.start(canvas, dirty); countOverdraw(layerCanvas); final int restoreCount = layerCanvas.save(); layerCanvas.drawDisplayList(displayList, null, DisplayList.FLAG_CLIP_CHILDREN); layerCanvas.restoreToCount(restoreCount); mDebugOverdrawLayer.end(canvas); float overdraw = getOverdraw(layerCanvas); DisplayMetrics metrics = attachInfo.mRootView.getResources().getDisplayMetrics(); drawOverdrawCounter(canvas, overdraw, metrics.density); } } private void drawOverdrawCounter(HardwareCanvas canvas, float overdraw, float density) { final String text = String.format("%.2fx", overdraw); final Paint paint = setupPaint(density); // HSBtoColor will clamp the values in the 0..1 range paint.setColor(Color.HSBtoColor(0.28f - 0.28f * overdraw / 3.5f, 0.8f, 1.0f)); canvas.drawText(text, density * 4.0f, mHeight - paint.getFontMetrics().bottom, paint); } private Paint setupPaint(float density) { if (mDebugOverdrawPaint == null) { mDebugOverdrawPaint = new Paint(); mDebugOverdrawPaint.setAntiAlias(true); mDebugOverdrawPaint.setShadowLayer(density * 3.0f, 0.0f, 0.0f, 0xff000000); mDebugOverdrawPaint.setTextSize(density * 20.0f); } return mDebugOverdrawPaint; } private DisplayList buildDisplayList(View view, HardwareCanvas canvas) { if (mDrawDelta <= 0) { return view.mDisplayList; Loading core/java/android/view/HardwareRenderer.java +0 −8 Original line number Diff line number Diff line Loading @@ -152,14 +152,6 @@ public abstract class HardwareRenderer { */ public static final String OVERDRAW_PROPERTY_SHOW = "show"; /** * Value for {@link #DEBUG_OVERDRAW_PROPERTY}. When the property is set to this * value, an overdraw counter will be shown on screen. * * @hide */ public static final String OVERDRAW_PROPERTY_COUNT = "count"; /** * Turn on to debug non-rectangular clip operations. * Loading core/jni/android_view_GLES20Canvas.cpp +0 −14 Original line number Diff line number Diff line Loading @@ -197,18 +197,6 @@ static void android_view_GLES20Canvas_setProperty(JNIEnv* env, env->ReleaseStringUTFChars(name, valueCharArray); } static void android_view_GLES20Canvas_setCountOverdrawEnabled(JNIEnv* env, jobject clazz, jlong rendererPtr, jboolean enabled) { OpenGLRenderer* renderer = reinterpret_cast<OpenGLRenderer*>(rendererPtr); renderer->setCountOverdrawEnabled(enabled); } static jfloat android_view_GLES20Canvas_getOverdraw(JNIEnv* env, jobject clazz, jlong rendererPtr) { OpenGLRenderer* renderer = reinterpret_cast<OpenGLRenderer*>(rendererPtr); return renderer->getOverdraw(); } // ---------------------------------------------------------------------------- // Functor // ---------------------------------------------------------------------------- Loading Loading @@ -1176,8 +1164,6 @@ static JNINativeMethod gMethods[] = { { "nSetProperty", "(Ljava/lang/String;Ljava/lang/String;)V", (void*) android_view_GLES20Canvas_setProperty }, { "nSetCountOverdrawEnabled", "(JZ)V", (void*) android_view_GLES20Canvas_setCountOverdrawEnabled }, { "nGetOverdraw", "(J)F", (void*) android_view_GLES20Canvas_getOverdraw }, { "nGetStencilSize", "()I", (void*) android_view_GLES20Canvas_getStencilSize }, Loading Loading
core/java/android/view/GLES20Canvas.java +0 −12 Original line number Diff line number Diff line Loading @@ -284,18 +284,6 @@ class GLES20Canvas extends HardwareCanvas { private static native int nGetStencilSize(); void setCountOverdrawEnabled(boolean enabled) { nSetCountOverdrawEnabled(mRenderer, enabled); } static native void nSetCountOverdrawEnabled(long renderer, boolean enabled); float getOverdraw() { return nGetOverdraw(mRenderer); } static native float nGetOverdraw(long renderer); /////////////////////////////////////////////////////////////////////////// // Functor /////////////////////////////////////////////////////////////////////////// Loading
core/java/android/view/GLRenderer.java +0 −70 Original line number Diff line number Diff line Loading @@ -109,9 +109,7 @@ public class GLRenderer extends HardwareRenderer { private static final String[] OVERDRAW = { OVERDRAW_PROPERTY_SHOW, OVERDRAW_PROPERTY_COUNT }; private static final int OVERDRAW_TYPE_COUNT = 1; private static final int GL_VERSION = 2; static EGL10 sEgl; Loading Loading @@ -160,8 +158,6 @@ public class GLRenderer extends HardwareRenderer { boolean mDebugDirtyRegions; int mDebugOverdraw = -1; HardwareLayer mDebugOverdrawLayer; Paint mDebugOverdrawPaint; final boolean mTranslucent; Loading Loading @@ -495,14 +491,6 @@ public class GLRenderer extends HardwareRenderer { return new GLES20RenderLayer(width, height, isOpaque); } void countOverdraw(HardwareCanvas canvas) { ((GLES20Canvas) canvas).setCountOverdrawEnabled(true); } float getOverdraw(HardwareCanvas canvas) { return ((GLES20Canvas) canvas).getOverdraw(); } @Override public SurfaceTexture createSurfaceTexture(HardwareLayer layer) { return ((GLES20TextureLayer) layer).getSurfaceTexture(); Loading Loading @@ -706,14 +694,6 @@ public class GLRenderer extends HardwareRenderer { if (debugOverdraw != mDebugOverdraw) { changed = true; mDebugOverdraw = debugOverdraw; if (mDebugOverdraw != OVERDRAW_TYPE_COUNT) { if (mDebugOverdrawLayer != null) { mDebugOverdrawLayer.destroy(); mDebugOverdrawLayer = null; mDebugOverdrawPaint = null; } } } if (loadProperties()) { Loading Loading @@ -1182,7 +1162,6 @@ public class GLRenderer extends HardwareRenderer { if (mDrawDelta > 0) { mFrameCount++; debugOverdraw(attachInfo, dirty, canvas, displayList); debugDirtyRegions(dirty, canvas); drawProfileData(attachInfo); } Loading @@ -1201,55 +1180,6 @@ public class GLRenderer extends HardwareRenderer { } } private void debugOverdraw(View.AttachInfo attachInfo, Rect dirty, HardwareCanvas canvas, DisplayList displayList) { if (mDebugOverdraw == OVERDRAW_TYPE_COUNT) { if (mDebugOverdrawLayer == null) { mDebugOverdrawLayer = createHardwareLayer(mWidth, mHeight, true); } else if (mDebugOverdrawLayer.getWidth() != mWidth || mDebugOverdrawLayer.getHeight() != mHeight) { mDebugOverdrawLayer.resize(mWidth, mHeight); } if (!mDebugOverdrawLayer.isValid()) { mDebugOverdraw = -1; return; } HardwareCanvas layerCanvas = mDebugOverdrawLayer.start(canvas, dirty); countOverdraw(layerCanvas); final int restoreCount = layerCanvas.save(); layerCanvas.drawDisplayList(displayList, null, DisplayList.FLAG_CLIP_CHILDREN); layerCanvas.restoreToCount(restoreCount); mDebugOverdrawLayer.end(canvas); float overdraw = getOverdraw(layerCanvas); DisplayMetrics metrics = attachInfo.mRootView.getResources().getDisplayMetrics(); drawOverdrawCounter(canvas, overdraw, metrics.density); } } private void drawOverdrawCounter(HardwareCanvas canvas, float overdraw, float density) { final String text = String.format("%.2fx", overdraw); final Paint paint = setupPaint(density); // HSBtoColor will clamp the values in the 0..1 range paint.setColor(Color.HSBtoColor(0.28f - 0.28f * overdraw / 3.5f, 0.8f, 1.0f)); canvas.drawText(text, density * 4.0f, mHeight - paint.getFontMetrics().bottom, paint); } private Paint setupPaint(float density) { if (mDebugOverdrawPaint == null) { mDebugOverdrawPaint = new Paint(); mDebugOverdrawPaint.setAntiAlias(true); mDebugOverdrawPaint.setShadowLayer(density * 3.0f, 0.0f, 0.0f, 0xff000000); mDebugOverdrawPaint.setTextSize(density * 20.0f); } return mDebugOverdrawPaint; } private DisplayList buildDisplayList(View view, HardwareCanvas canvas) { if (mDrawDelta <= 0) { return view.mDisplayList; Loading
core/java/android/view/HardwareRenderer.java +0 −8 Original line number Diff line number Diff line Loading @@ -152,14 +152,6 @@ public abstract class HardwareRenderer { */ public static final String OVERDRAW_PROPERTY_SHOW = "show"; /** * Value for {@link #DEBUG_OVERDRAW_PROPERTY}. When the property is set to this * value, an overdraw counter will be shown on screen. * * @hide */ public static final String OVERDRAW_PROPERTY_COUNT = "count"; /** * Turn on to debug non-rectangular clip operations. * Loading
core/jni/android_view_GLES20Canvas.cpp +0 −14 Original line number Diff line number Diff line Loading @@ -197,18 +197,6 @@ static void android_view_GLES20Canvas_setProperty(JNIEnv* env, env->ReleaseStringUTFChars(name, valueCharArray); } static void android_view_GLES20Canvas_setCountOverdrawEnabled(JNIEnv* env, jobject clazz, jlong rendererPtr, jboolean enabled) { OpenGLRenderer* renderer = reinterpret_cast<OpenGLRenderer*>(rendererPtr); renderer->setCountOverdrawEnabled(enabled); } static jfloat android_view_GLES20Canvas_getOverdraw(JNIEnv* env, jobject clazz, jlong rendererPtr) { OpenGLRenderer* renderer = reinterpret_cast<OpenGLRenderer*>(rendererPtr); return renderer->getOverdraw(); } // ---------------------------------------------------------------------------- // Functor // ---------------------------------------------------------------------------- Loading Loading @@ -1176,8 +1164,6 @@ static JNINativeMethod gMethods[] = { { "nSetProperty", "(Ljava/lang/String;Ljava/lang/String;)V", (void*) android_view_GLES20Canvas_setProperty }, { "nSetCountOverdrawEnabled", "(JZ)V", (void*) android_view_GLES20Canvas_setCountOverdrawEnabled }, { "nGetOverdraw", "(J)F", (void*) android_view_GLES20Canvas_getOverdraw }, { "nGetStencilSize", "()I", (void*) android_view_GLES20Canvas_getStencilSize }, Loading