Loading core/java/android/view/GLES20Canvas.java +3 −4 Original line number Diff line number Diff line Loading @@ -358,14 +358,13 @@ class GLES20Canvas extends HardwareCanvas { private static native void nSetDisplayListName(int displayList, String name); @Override public int drawDisplayList(DisplayList displayList, int width, int height, Rect dirty, int flags) { public int drawDisplayList(DisplayList displayList, Rect dirty, int flags) { return nDrawDisplayList(mRenderer, ((GLES20DisplayList) displayList).getNativeDisplayList(), width, height, dirty, flags); dirty, flags); } private static native int nDrawDisplayList(int renderer, int displayList, int width, int height, Rect dirty, int flags); Rect dirty, int flags); @Override void outputDisplayList(DisplayList displayList) { Loading core/java/android/view/HardwareCanvas.java +3 −6 Original line number Diff line number Diff line Loading @@ -53,8 +53,6 @@ public abstract class HardwareCanvas extends Canvas { * Draws the specified display list onto this canvas. * * @param displayList The display list to replay. * @param width The width of the display list. * @param height The height of the display list. * @param dirty The dirty region to redraw in the next pass, matters only * if this method returns true, can be null. * @param flags Optional flags about drawing, see {@link DisplayList} for Loading @@ -63,8 +61,7 @@ public abstract class HardwareCanvas extends Canvas { * @return One of {@link DisplayList#STATUS_DONE}, {@link DisplayList#STATUS_DRAW} or * {@link DisplayList#STATUS_INVOKE} */ public abstract int drawDisplayList(DisplayList displayList, int width, int height, Rect dirty, int flags); public abstract int drawDisplayList(DisplayList displayList, Rect dirty, int flags); /** * Outputs the specified display list to the log. This method exists for use by Loading core/java/android/view/HardwareRenderer.java +1 −2 Original line number Diff line number Diff line Loading @@ -1099,8 +1099,7 @@ public abstract class HardwareRenderer { drawDisplayListStartTime = System.nanoTime(); } int status = canvas.drawDisplayList(displayList, view.getWidth(), view.getHeight(), mRedrawClip, int status = canvas.drawDisplayList(displayList, mRedrawClip, DisplayList.FLAG_CLIP_CHILDREN); if (mProfileEnabled) { Loading core/java/android/view/View.java +28 −50 Original line number Diff line number Diff line Loading @@ -1530,14 +1530,6 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal */ static final ThreadLocal<Rect> sThreadLocal = new ThreadLocal<Rect>(); /** * Temporary flag, used to enable processing of View properties in the native DisplayList * object instead of during draw(). Soon to be enabled by default for hardware-accelerated * apps. * @hide */ public static final boolean USE_DISPLAY_LIST_PROPERTIES = true; /** * Map used to store views' tags. */ Loading Loading @@ -8269,7 +8261,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal info.mMatrixDirty = true; invalidateViewProperty(false, false); if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setCameraDistance(-Math.abs(distance) / dpi); } } Loading Loading @@ -8311,7 +8303,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal info.mRotation = rotation; info.mMatrixDirty = true; invalidateViewProperty(false, true); if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setRotation(rotation); } } Loading Loading @@ -8358,7 +8350,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal info.mRotationY = rotationY; info.mMatrixDirty = true; invalidateViewProperty(false, true); if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setRotationY(rotationY); } } Loading Loading @@ -8405,7 +8397,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal info.mRotationX = rotationX; info.mMatrixDirty = true; invalidateViewProperty(false, true); if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setRotationX(rotationX); } } Loading Loading @@ -8444,7 +8436,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal info.mScaleX = scaleX; info.mMatrixDirty = true; invalidateViewProperty(false, true); if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setScaleX(scaleX); } } Loading Loading @@ -8483,7 +8475,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal info.mScaleY = scaleY; info.mMatrixDirty = true; invalidateViewProperty(false, true); if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setScaleY(scaleY); } } Loading Loading @@ -8530,7 +8522,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal info.mPivotX = pivotX; info.mMatrixDirty = true; invalidateViewProperty(false, true); if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setPivotX(pivotX); } } Loading Loading @@ -8576,7 +8568,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal info.mPivotY = pivotY; info.mMatrixDirty = true; invalidateViewProperty(false, true); if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setPivotY(pivotY); } } Loading Loading @@ -8642,7 +8634,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal } else { mPrivateFlags &= ~ALPHA_SET; invalidateViewProperty(true, false); if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setAlpha(alpha); } } Loading @@ -8669,7 +8661,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal return true; } else { mPrivateFlags &= ~ALPHA_SET; if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setAlpha(alpha); } } Loading Loading @@ -8721,7 +8713,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal int oldHeight = mBottom - mTop; mTop = top; if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setTop(mTop); } Loading Loading @@ -8790,7 +8782,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal int oldHeight = mBottom - mTop; mBottom = bottom; if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setBottom(mBottom); } Loading Loading @@ -8853,7 +8845,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal int height = mBottom - mTop; mLeft = left; if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setLeft(left); } Loading @@ -8869,9 +8861,6 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal } mBackgroundSizeChanged = true; invalidateParentIfNeeded(); if (USE_DISPLAY_LIST_PROPERTIES) { } } } Loading Loading @@ -8916,7 +8905,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal int height = mBottom - mTop; mRight = right; if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setRight(mRight); } Loading Loading @@ -9013,7 +9002,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal info.mTranslationX = translationX; info.mMatrixDirty = true; invalidateViewProperty(false, true); if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setTranslationX(translationX); } } Loading Loading @@ -9050,7 +9039,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal info.mTranslationY = translationY; info.mMatrixDirty = true; invalidateViewProperty(false, true); if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setTranslationY(translationY); } } Loading Loading @@ -9161,7 +9150,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal final boolean matrixIsIdentity = mTransformationInfo == null || mTransformationInfo.mMatrixIsIdentity; if (matrixIsIdentity) { if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { invalidateViewProperty(false, false); } else { final ViewParent p = mParent; Loading Loading @@ -9189,7 +9178,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal mTop += offset; mBottom += offset; if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.offsetTopBottom(offset); invalidateViewProperty(false, false); } else { Loading @@ -9212,7 +9201,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal final boolean matrixIsIdentity = mTransformationInfo == null || mTransformationInfo.mMatrixIsIdentity; if (matrixIsIdentity) { if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { invalidateViewProperty(false, false); } else { final ViewParent p = mParent; Loading @@ -9237,7 +9226,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal mLeft += offset; mRight += offset; if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.offsetLeftRight(offset); invalidateViewProperty(false, false); } else { Loading Loading @@ -9666,8 +9655,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal * list properties are not being used in this view */ void invalidateViewProperty(boolean invalidateParent, boolean forceRedraw) { if (!USE_DISPLAY_LIST_PROPERTIES || mDisplayList == null || (mPrivateFlags & DRAW_ANIMATION) == DRAW_ANIMATION) { if (mDisplayList == null || (mPrivateFlags & DRAW_ANIMATION) == DRAW_ANIMATION) { if (invalidateParent) { invalidateParentCaches(); } Loading Loading @@ -11759,7 +11747,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal int layerType = ( !(mParent instanceof ViewGroup) || ((ViewGroup)mParent).mDrawLayers) ? getLayerType() : LAYER_TYPE_NONE; if (!isLayer && layerType != LAYER_TYPE_NONE && USE_DISPLAY_LIST_PROPERTIES) { if (!isLayer && layerType != LAYER_TYPE_NONE) { if (layerType == LAYER_TYPE_HARDWARE) { final HardwareLayer layer = getHardwareLayer(); if (layer != null && layer.isValid()) { Loading @@ -11782,9 +11770,6 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal computeScroll(); if (!USE_DISPLAY_LIST_PROPERTIES) { restoreCount = canvas.save(); } canvas.translate(-mScrollX, -mScrollY); if (!isLayer) { mPrivateFlags |= DRAWN | DRAWING_CACHE_VALID; Loading @@ -11799,16 +11784,11 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal } } } finally { if (USE_DISPLAY_LIST_PROPERTIES) { canvas.restoreToCount(restoreCount); } canvas.onPostDraw(); displayList.end(); if (USE_DISPLAY_LIST_PROPERTIES) { displayList.setCaching(caching); } if (isLayer && USE_DISPLAY_LIST_PROPERTIES) { if (isLayer) { displayList.setLeftTopRightBottom(0, 0, width, height); } else { setDisplayListProperties(displayList); Loading Loading @@ -12400,7 +12380,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal * previously-set transform values */ void setDisplayListProperties(DisplayList displayList) { if (USE_DISPLAY_LIST_PROPERTIES && displayList != null) { if (displayList != null) { displayList.setLeftTopRightBottom(mLeft, mTop, mRight, mBottom); displayList.setHasOverlappingRendering(hasOverlappingRendering()); if (mParent instanceof ViewGroup) { Loading Loading @@ -12460,8 +12440,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal * to be called from anywhere else other than ViewGroup.drawChild(). */ boolean draw(Canvas canvas, ViewGroup parent, long drawingTime) { boolean useDisplayListProperties = USE_DISPLAY_LIST_PROPERTIES && mAttachInfo != null && mAttachInfo.mHardwareAccelerated; boolean useDisplayListProperties = mAttachInfo != null && mAttachInfo.mHardwareAccelerated; boolean more = false; final boolean childHasIdentityMatrix = hasIdentityMatrix(); final int flags = parent.mGroupFlags; Loading Loading @@ -12722,8 +12701,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal } } else { mPrivateFlags &= ~DIRTY_MASK; ((HardwareCanvas) canvas).drawDisplayList(displayList, mRight - mLeft, mBottom - mTop, null, flags); ((HardwareCanvas) canvas).drawDisplayList(displayList, null, flags); } } } else if (cache != null) { Loading Loading @@ -13211,7 +13189,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal mTop = top; mRight = right; mBottom = bottom; if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setLeftTopRightBottom(mLeft, mTop, mRight, mBottom); } Loading core/java/android/view/ViewGroup.java +5 −7 Original line number Diff line number Diff line Loading @@ -2898,7 +2898,6 @@ public abstract class ViewGroup extends View implements ViewParent, ViewManager boolean previousValue = (mGroupFlags & FLAG_CLIP_CHILDREN) == FLAG_CLIP_CHILDREN; if (clipChildren != previousValue) { setBooleanFlag(FLAG_CLIP_CHILDREN, clipChildren); if (USE_DISPLAY_LIST_PROPERTIES) { for (int i = 0; i < mChildrenCount; ++i) { View child = getChildAt(i); if (child.mDisplayList != null) { Loading @@ -2907,7 +2906,6 @@ public abstract class ViewGroup extends View implements ViewParent, ViewManager } } } } /** * By default, children are clipped to the padding of the ViewGroup. This Loading Loading @@ -4229,7 +4227,7 @@ public abstract class ViewGroup extends View implements ViewParent, ViewManager final View v = children[i]; v.mTop += offset; v.mBottom += offset; if (USE_DISPLAY_LIST_PROPERTIES && v.mDisplayList != null) { if (v.mDisplayList != null) { v.mDisplayList.offsetTopBottom(offset); invalidateViewProperty(false, false); } Loading Loading
core/java/android/view/GLES20Canvas.java +3 −4 Original line number Diff line number Diff line Loading @@ -358,14 +358,13 @@ class GLES20Canvas extends HardwareCanvas { private static native void nSetDisplayListName(int displayList, String name); @Override public int drawDisplayList(DisplayList displayList, int width, int height, Rect dirty, int flags) { public int drawDisplayList(DisplayList displayList, Rect dirty, int flags) { return nDrawDisplayList(mRenderer, ((GLES20DisplayList) displayList).getNativeDisplayList(), width, height, dirty, flags); dirty, flags); } private static native int nDrawDisplayList(int renderer, int displayList, int width, int height, Rect dirty, int flags); Rect dirty, int flags); @Override void outputDisplayList(DisplayList displayList) { Loading
core/java/android/view/HardwareCanvas.java +3 −6 Original line number Diff line number Diff line Loading @@ -53,8 +53,6 @@ public abstract class HardwareCanvas extends Canvas { * Draws the specified display list onto this canvas. * * @param displayList The display list to replay. * @param width The width of the display list. * @param height The height of the display list. * @param dirty The dirty region to redraw in the next pass, matters only * if this method returns true, can be null. * @param flags Optional flags about drawing, see {@link DisplayList} for Loading @@ -63,8 +61,7 @@ public abstract class HardwareCanvas extends Canvas { * @return One of {@link DisplayList#STATUS_DONE}, {@link DisplayList#STATUS_DRAW} or * {@link DisplayList#STATUS_INVOKE} */ public abstract int drawDisplayList(DisplayList displayList, int width, int height, Rect dirty, int flags); public abstract int drawDisplayList(DisplayList displayList, Rect dirty, int flags); /** * Outputs the specified display list to the log. This method exists for use by Loading
core/java/android/view/HardwareRenderer.java +1 −2 Original line number Diff line number Diff line Loading @@ -1099,8 +1099,7 @@ public abstract class HardwareRenderer { drawDisplayListStartTime = System.nanoTime(); } int status = canvas.drawDisplayList(displayList, view.getWidth(), view.getHeight(), mRedrawClip, int status = canvas.drawDisplayList(displayList, mRedrawClip, DisplayList.FLAG_CLIP_CHILDREN); if (mProfileEnabled) { Loading
core/java/android/view/View.java +28 −50 Original line number Diff line number Diff line Loading @@ -1530,14 +1530,6 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal */ static final ThreadLocal<Rect> sThreadLocal = new ThreadLocal<Rect>(); /** * Temporary flag, used to enable processing of View properties in the native DisplayList * object instead of during draw(). Soon to be enabled by default for hardware-accelerated * apps. * @hide */ public static final boolean USE_DISPLAY_LIST_PROPERTIES = true; /** * Map used to store views' tags. */ Loading Loading @@ -8269,7 +8261,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal info.mMatrixDirty = true; invalidateViewProperty(false, false); if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setCameraDistance(-Math.abs(distance) / dpi); } } Loading Loading @@ -8311,7 +8303,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal info.mRotation = rotation; info.mMatrixDirty = true; invalidateViewProperty(false, true); if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setRotation(rotation); } } Loading Loading @@ -8358,7 +8350,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal info.mRotationY = rotationY; info.mMatrixDirty = true; invalidateViewProperty(false, true); if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setRotationY(rotationY); } } Loading Loading @@ -8405,7 +8397,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal info.mRotationX = rotationX; info.mMatrixDirty = true; invalidateViewProperty(false, true); if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setRotationX(rotationX); } } Loading Loading @@ -8444,7 +8436,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal info.mScaleX = scaleX; info.mMatrixDirty = true; invalidateViewProperty(false, true); if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setScaleX(scaleX); } } Loading Loading @@ -8483,7 +8475,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal info.mScaleY = scaleY; info.mMatrixDirty = true; invalidateViewProperty(false, true); if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setScaleY(scaleY); } } Loading Loading @@ -8530,7 +8522,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal info.mPivotX = pivotX; info.mMatrixDirty = true; invalidateViewProperty(false, true); if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setPivotX(pivotX); } } Loading Loading @@ -8576,7 +8568,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal info.mPivotY = pivotY; info.mMatrixDirty = true; invalidateViewProperty(false, true); if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setPivotY(pivotY); } } Loading Loading @@ -8642,7 +8634,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal } else { mPrivateFlags &= ~ALPHA_SET; invalidateViewProperty(true, false); if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setAlpha(alpha); } } Loading @@ -8669,7 +8661,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal return true; } else { mPrivateFlags &= ~ALPHA_SET; if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setAlpha(alpha); } } Loading Loading @@ -8721,7 +8713,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal int oldHeight = mBottom - mTop; mTop = top; if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setTop(mTop); } Loading Loading @@ -8790,7 +8782,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal int oldHeight = mBottom - mTop; mBottom = bottom; if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setBottom(mBottom); } Loading Loading @@ -8853,7 +8845,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal int height = mBottom - mTop; mLeft = left; if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setLeft(left); } Loading @@ -8869,9 +8861,6 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal } mBackgroundSizeChanged = true; invalidateParentIfNeeded(); if (USE_DISPLAY_LIST_PROPERTIES) { } } } Loading Loading @@ -8916,7 +8905,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal int height = mBottom - mTop; mRight = right; if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setRight(mRight); } Loading Loading @@ -9013,7 +9002,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal info.mTranslationX = translationX; info.mMatrixDirty = true; invalidateViewProperty(false, true); if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setTranslationX(translationX); } } Loading Loading @@ -9050,7 +9039,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal info.mTranslationY = translationY; info.mMatrixDirty = true; invalidateViewProperty(false, true); if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setTranslationY(translationY); } } Loading Loading @@ -9161,7 +9150,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal final boolean matrixIsIdentity = mTransformationInfo == null || mTransformationInfo.mMatrixIsIdentity; if (matrixIsIdentity) { if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { invalidateViewProperty(false, false); } else { final ViewParent p = mParent; Loading Loading @@ -9189,7 +9178,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal mTop += offset; mBottom += offset; if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.offsetTopBottom(offset); invalidateViewProperty(false, false); } else { Loading @@ -9212,7 +9201,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal final boolean matrixIsIdentity = mTransformationInfo == null || mTransformationInfo.mMatrixIsIdentity; if (matrixIsIdentity) { if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { invalidateViewProperty(false, false); } else { final ViewParent p = mParent; Loading @@ -9237,7 +9226,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal mLeft += offset; mRight += offset; if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.offsetLeftRight(offset); invalidateViewProperty(false, false); } else { Loading Loading @@ -9666,8 +9655,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal * list properties are not being used in this view */ void invalidateViewProperty(boolean invalidateParent, boolean forceRedraw) { if (!USE_DISPLAY_LIST_PROPERTIES || mDisplayList == null || (mPrivateFlags & DRAW_ANIMATION) == DRAW_ANIMATION) { if (mDisplayList == null || (mPrivateFlags & DRAW_ANIMATION) == DRAW_ANIMATION) { if (invalidateParent) { invalidateParentCaches(); } Loading Loading @@ -11759,7 +11747,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal int layerType = ( !(mParent instanceof ViewGroup) || ((ViewGroup)mParent).mDrawLayers) ? getLayerType() : LAYER_TYPE_NONE; if (!isLayer && layerType != LAYER_TYPE_NONE && USE_DISPLAY_LIST_PROPERTIES) { if (!isLayer && layerType != LAYER_TYPE_NONE) { if (layerType == LAYER_TYPE_HARDWARE) { final HardwareLayer layer = getHardwareLayer(); if (layer != null && layer.isValid()) { Loading @@ -11782,9 +11770,6 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal computeScroll(); if (!USE_DISPLAY_LIST_PROPERTIES) { restoreCount = canvas.save(); } canvas.translate(-mScrollX, -mScrollY); if (!isLayer) { mPrivateFlags |= DRAWN | DRAWING_CACHE_VALID; Loading @@ -11799,16 +11784,11 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal } } } finally { if (USE_DISPLAY_LIST_PROPERTIES) { canvas.restoreToCount(restoreCount); } canvas.onPostDraw(); displayList.end(); if (USE_DISPLAY_LIST_PROPERTIES) { displayList.setCaching(caching); } if (isLayer && USE_DISPLAY_LIST_PROPERTIES) { if (isLayer) { displayList.setLeftTopRightBottom(0, 0, width, height); } else { setDisplayListProperties(displayList); Loading Loading @@ -12400,7 +12380,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal * previously-set transform values */ void setDisplayListProperties(DisplayList displayList) { if (USE_DISPLAY_LIST_PROPERTIES && displayList != null) { if (displayList != null) { displayList.setLeftTopRightBottom(mLeft, mTop, mRight, mBottom); displayList.setHasOverlappingRendering(hasOverlappingRendering()); if (mParent instanceof ViewGroup) { Loading Loading @@ -12460,8 +12440,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal * to be called from anywhere else other than ViewGroup.drawChild(). */ boolean draw(Canvas canvas, ViewGroup parent, long drawingTime) { boolean useDisplayListProperties = USE_DISPLAY_LIST_PROPERTIES && mAttachInfo != null && mAttachInfo.mHardwareAccelerated; boolean useDisplayListProperties = mAttachInfo != null && mAttachInfo.mHardwareAccelerated; boolean more = false; final boolean childHasIdentityMatrix = hasIdentityMatrix(); final int flags = parent.mGroupFlags; Loading Loading @@ -12722,8 +12701,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal } } else { mPrivateFlags &= ~DIRTY_MASK; ((HardwareCanvas) canvas).drawDisplayList(displayList, mRight - mLeft, mBottom - mTop, null, flags); ((HardwareCanvas) canvas).drawDisplayList(displayList, null, flags); } } } else if (cache != null) { Loading Loading @@ -13211,7 +13189,7 @@ public class View implements Drawable.Callback, Drawable.Callback2, KeyEvent.Cal mTop = top; mRight = right; mBottom = bottom; if (USE_DISPLAY_LIST_PROPERTIES && mDisplayList != null) { if (mDisplayList != null) { mDisplayList.setLeftTopRightBottom(mLeft, mTop, mRight, mBottom); } Loading
core/java/android/view/ViewGroup.java +5 −7 Original line number Diff line number Diff line Loading @@ -2898,7 +2898,6 @@ public abstract class ViewGroup extends View implements ViewParent, ViewManager boolean previousValue = (mGroupFlags & FLAG_CLIP_CHILDREN) == FLAG_CLIP_CHILDREN; if (clipChildren != previousValue) { setBooleanFlag(FLAG_CLIP_CHILDREN, clipChildren); if (USE_DISPLAY_LIST_PROPERTIES) { for (int i = 0; i < mChildrenCount; ++i) { View child = getChildAt(i); if (child.mDisplayList != null) { Loading @@ -2907,7 +2906,6 @@ public abstract class ViewGroup extends View implements ViewParent, ViewManager } } } } /** * By default, children are clipped to the padding of the ViewGroup. This Loading Loading @@ -4229,7 +4227,7 @@ public abstract class ViewGroup extends View implements ViewParent, ViewManager final View v = children[i]; v.mTop += offset; v.mBottom += offset; if (USE_DISPLAY_LIST_PROPERTIES && v.mDisplayList != null) { if (v.mDisplayList != null) { v.mDisplayList.offsetTopBottom(offset); invalidateViewProperty(false, false); } Loading