Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 041e1158 authored by Alan Viverette's avatar Alan Viverette Committed by Android Git Automerger
Browse files

am 365f5c2e: Merge "Update ripple drawable target radius on bounds change" into mnc-dev

* commit '365f5c2e':
  Update ripple drawable target radius on bounds change
parents eed81be1 365f5c2e
Loading
Loading
Loading
Loading
+14 −3
Original line number Diff line number Diff line
@@ -57,14 +57,19 @@ abstract class RippleComponent {
        mBounds = bounds;
    }

    public void onBoundsChange() {
        if (!mHasMaxRadius) {
            mTargetRadius = getTargetRadius(mBounds);
            onTargetRadiusChanged(mTargetRadius);
        }
    }

    public final void setup(float maxRadius, float density) {
        if (maxRadius >= 0) {
            mHasMaxRadius = true;
            mTargetRadius = maxRadius;
        } else {
            final float halfWidth = mBounds.width() / 2.0f;
            final float halfHeight = mBounds.height() / 2.0f;
            mTargetRadius = (float) Math.sqrt(halfWidth * halfWidth + halfHeight * halfHeight);
            mTargetRadius = getTargetRadius(mBounds);
        }

        mDensity = density;
@@ -72,6 +77,12 @@ abstract class RippleComponent {
        onTargetRadiusChanged(mTargetRadius);
    }

    private static float getTargetRadius(Rect bounds) {
        final float halfWidth = bounds.width() / 2.0f;
        final float halfHeight = bounds.height() / 2.0f;
        return (float) Math.sqrt(halfWidth * halfWidth + halfHeight * halfHeight);
    }

    /**
     * Starts a ripple enter animation.
     *
+8 −1
Original line number Diff line number Diff line
@@ -31,7 +31,6 @@ import android.graphics.Bitmap;
import android.graphics.BitmapShader;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.ColorFilter;
import android.graphics.Matrix;
import android.graphics.Outline;
import android.graphics.Paint;
@@ -294,6 +293,14 @@ public class RippleDrawable extends LayerDrawable {
            onHotspotBoundsChanged();
        }

        if (mBackground != null) {
            mBackground.onBoundsChange();
        }

        if (mRipple != null) {
            mRipple.onBoundsChange();
        }

        invalidateSelf();
    }