diff options
author | Haamed Gheibi <haamed@google.com> | 2021-07-12 20:47:45 +0000 |
---|---|---|
committer | Haamed Gheibi <haamed@google.com> | 2021-07-14 18:21:17 +0000 |
commit | 02a7ee5d65cb8d40fd1dde9aaf6b5ead9222a5a6 (patch) | |
tree | 6fb30a5bc0d0e7fadd37d62cdba537c4d5d9237b /graphics/java | |
parent | bab7c6ab6b363574baaace4df576c1abb67f4507 (diff) | |
parent | fa0439912edd9559d7c0f46bef2b2898de68f50f (diff) |
Merge SP1A.210709.002
Change-Id: I4610885d5d770d858895057cdd9fea387a5e33dd
Diffstat (limited to 'graphics/java')
-rw-r--r-- | graphics/java/android/graphics/BLASTBufferQueue.java | 8 | ||||
-rw-r--r-- | graphics/java/android/graphics/HardwareRenderer.java | 7 | ||||
-rw-r--r-- | graphics/java/android/graphics/drawable/RippleDrawable.java | 12 |
3 files changed, 18 insertions, 9 deletions
diff --git a/graphics/java/android/graphics/BLASTBufferQueue.java b/graphics/java/android/graphics/BLASTBufferQueue.java index 3badb5f2b4d9..d13f1d3c17c3 100644 --- a/graphics/java/android/graphics/BLASTBufferQueue.java +++ b/graphics/java/android/graphics/BLASTBufferQueue.java @@ -147,4 +147,12 @@ public final class BLASTBufferQueue { nativeMergeWithNextTransaction(mNativeObject, t.mNativeObject, frameNumber); } + /** + * Merge the transaction passed in to the next transaction in BlastBufferQueue. + * @param nativeTransaction native handle passed from native c/c++ code. + */ + public void mergeWithNextTransaction(long nativeTransaction, long frameNumber) { + nativeMergeWithNextTransaction(mNativeObject, nativeTransaction, frameNumber); + } + } diff --git a/graphics/java/android/graphics/HardwareRenderer.java b/graphics/java/android/graphics/HardwareRenderer.java index e141d5178570..fe04f0dd4c83 100644 --- a/graphics/java/android/graphics/HardwareRenderer.java +++ b/graphics/java/android/graphics/HardwareRenderer.java @@ -912,7 +912,7 @@ public class HardwareRenderer { * @param aSurfaceControlNativeObj ASurfaceControl native object handle * @param frame The id of the frame being drawn. */ - void onMergeTransaction(long aSurfaceTranactionNativeObj, + boolean onMergeTransaction(long aSurfaceTranactionNativeObj, long aSurfaceControlNativeObj, long frame); } @@ -1304,6 +1304,11 @@ public class HardwareRenderer { */ public static native void preload(); + /** + * @hide + */ + public static native boolean isWebViewOverlaysEnabled(); + /** @hide */ protected static native void setupShadersDiskCache(String cacheFile, String skiaCacheFile); diff --git a/graphics/java/android/graphics/drawable/RippleDrawable.java b/graphics/java/android/graphics/drawable/RippleDrawable.java index 8aba87ba3c8f..b994ad20320b 100644 --- a/graphics/java/android/graphics/drawable/RippleDrawable.java +++ b/graphics/java/android/graphics/drawable/RippleDrawable.java @@ -184,7 +184,6 @@ public class RippleDrawable extends LayerDrawable { private PorterDuffColorFilter mMaskColorFilter; private PorterDuffColorFilter mFocusColorFilter; private boolean mHasValidMask; - private int mComputedRadius = -1; /** The current ripple. May be actively animating or pending entry. */ private RippleForeground mRipple; @@ -390,8 +389,6 @@ public class RippleDrawable extends LayerDrawable { if (mRipple != null) { mRipple.onBoundsChange(); } - - mComputedRadius = Math.round(computeRadius()); invalidateSelf(); } @@ -750,7 +747,7 @@ public class RippleDrawable extends LayerDrawable { if (mBackground != null) { mBackground.onHotspotBoundsChanged(); } - float newRadius = Math.round(computeRadius()); + float newRadius = Math.round(getComputedRadius()); for (int i = 0; i < mRunningAnimations.size(); i++) { RippleAnimationSession s = mRunningAnimations.get(i); s.setRadius(newRadius); @@ -939,14 +936,13 @@ public class RippleDrawable extends LayerDrawable { } private float computeRadius() { - Rect b = getDirtyBounds(); - float radius = (float) Math.sqrt(b.width() * b.width() + b.height() * b.height()) / 2; - return radius; + final float halfWidth = mHotspotBounds.width() / 2.0f; + final float halfHeight = mHotspotBounds.height() / 2.0f; + return (float) Math.sqrt(halfWidth * halfWidth + halfHeight * halfHeight); } private int getComputedRadius() { if (mState.mMaxRadius >= 0) return mState.mMaxRadius; - if (mComputedRadius >= 0) return mComputedRadius; return (int) computeRadius(); } |