Merge "Fix rendering artifacts on tiled renderers Bug #7275145" into jb-mr1-dev
This commit is contained in:
@ -235,18 +235,6 @@ class GLES20RecordingCanvas extends GLES20Canvas implements Poolable<GLES20Recor
|
||||
recordShaderBitmap(paint);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void drawRect(Rect r, Paint paint) {
|
||||
super.drawRect(r, paint);
|
||||
recordShaderBitmap(paint);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void drawRect(RectF r, Paint paint) {
|
||||
super.drawRect(r, paint);
|
||||
recordShaderBitmap(paint);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void drawRoundRect(RectF rect, float rx, float ry, Paint paint) {
|
||||
super.drawRoundRect(rect, rx, ry, paint);
|
||||
|
@ -507,17 +507,22 @@ public abstract class HardwareRenderer {
|
||||
* @param width The width of the drawing surface.
|
||||
* @param height The height of the drawing surface.
|
||||
* @param surface The surface to hardware accelerate
|
||||
*
|
||||
* @return true if the surface was initialized, false otherwise. Returning
|
||||
* false might mean that the surface was already initialized.
|
||||
*/
|
||||
void initializeIfNeeded(int width, int height, Surface surface)
|
||||
boolean initializeIfNeeded(int width, int height, Surface surface)
|
||||
throws Surface.OutOfResourcesException {
|
||||
if (isRequested()) {
|
||||
// We lost the gl context, so recreate it.
|
||||
if (!isEnabled()) {
|
||||
if (initialize(surface)) {
|
||||
setup(width, height);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -2904,6 +2904,7 @@ public class View implements Drawable.Callback, KeyEvent.Callback,
|
||||
*/
|
||||
int mOldHeightMeasureSpec = Integer.MIN_VALUE;
|
||||
|
||||
@ViewDebug.ExportedProperty(deepExport = true, prefix = "bg_")
|
||||
private Drawable mBackground;
|
||||
|
||||
private int mBackgroundResource;
|
||||
|
@ -923,8 +923,12 @@ public class ViewDebug {
|
||||
private static void dumpViewProperties(Context context, Object view,
|
||||
BufferedWriter out, String prefix) throws IOException {
|
||||
|
||||
Class<?> klass = view.getClass();
|
||||
if (view == null) {
|
||||
out.write(prefix + "=4,null ");
|
||||
return;
|
||||
}
|
||||
|
||||
Class<?> klass = view.getClass();
|
||||
do {
|
||||
exportFields(context, view, out, klass, prefix);
|
||||
exportMethods(context, view, out, klass, prefix);
|
||||
@ -1064,8 +1068,8 @@ public class ViewDebug {
|
||||
return;
|
||||
} else if (!type.isPrimitive()) {
|
||||
if (property.deepExport()) {
|
||||
dumpViewProperties(context, field.get(view), out, prefix
|
||||
+ property.prefix());
|
||||
dumpViewProperties(context, field.get(view), out, prefix +
|
||||
property.prefix());
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
@ -52,7 +52,6 @@ import android.os.RemoteException;
|
||||
import android.os.SystemClock;
|
||||
import android.os.SystemProperties;
|
||||
import android.os.Trace;
|
||||
import android.os.UserHandle;
|
||||
import android.util.AndroidRuntimeException;
|
||||
import android.util.DisplayMetrics;
|
||||
import android.util.Log;
|
||||
@ -2817,10 +2816,10 @@ public final class ViewRootImpl implements ViewParent,
|
||||
case MSG_RESIZED: {
|
||||
// Recycled in the fall through...
|
||||
SomeArgs args = (SomeArgs) msg.obj;
|
||||
if (mWinFrame.equals((Rect) args.arg1)
|
||||
&& mPendingContentInsets.equals((Rect) args.arg2)
|
||||
&& mPendingVisibleInsets.equals((Rect) args.arg3)
|
||||
&& ((Configuration) args.arg4 == null)) {
|
||||
if (mWinFrame.equals(args.arg1)
|
||||
&& mPendingContentInsets.equals(args.arg2)
|
||||
&& mPendingVisibleInsets.equals(args.arg3)
|
||||
&& args.arg4 == null) {
|
||||
break;
|
||||
}
|
||||
} // fall through...
|
||||
@ -2882,8 +2881,10 @@ public final class ViewRootImpl implements ViewParent,
|
||||
mSurface != null && mSurface.isValid()) {
|
||||
mFullRedrawNeeded = true;
|
||||
try {
|
||||
mAttachInfo.mHardwareRenderer.initializeIfNeeded(mWidth, mHeight,
|
||||
mHolder.getSurface());
|
||||
if (mAttachInfo.mHardwareRenderer.initializeIfNeeded(
|
||||
mWidth, mHeight, mHolder.getSurface())) {
|
||||
mFullRedrawNeeded = true;
|
||||
}
|
||||
} catch (Surface.OutOfResourcesException e) {
|
||||
Log.e(TAG, "OutOfResourcesException locking surface", e);
|
||||
try {
|
||||
|
@ -20,6 +20,7 @@ import android.graphics.*;
|
||||
import android.content.res.Resources;
|
||||
import android.content.res.TypedArray;
|
||||
import android.util.AttributeSet;
|
||||
import android.view.ViewDebug;
|
||||
import org.xmlpull.v1.XmlPullParser;
|
||||
import org.xmlpull.v1.XmlPullParserException;
|
||||
|
||||
@ -34,6 +35,7 @@ import java.io.IOException;
|
||||
* @attr ref android.R.styleable#ColorDrawable_color
|
||||
*/
|
||||
public class ColorDrawable extends Drawable {
|
||||
@ViewDebug.ExportedProperty(deepExport = true, prefix = "state_")
|
||||
private ColorState mState;
|
||||
private final Paint mPaint = new Paint();
|
||||
private boolean mMutated;
|
||||
@ -174,6 +176,7 @@ public class ColorDrawable extends Drawable {
|
||||
|
||||
final static class ColorState extends ConstantState {
|
||||
int mBaseColor; // base color, independent of setAlpha()
|
||||
@ViewDebug.ExportedProperty
|
||||
int mUseColor; // basecolor modulated by setAlpha()
|
||||
int mChangingConfigurations;
|
||||
|
||||
|
Reference in New Issue
Block a user