package com.squareup.leakcanary.internal; import android.content.res.Resources; import android.graphics.Canvas; import android.graphics.Paint; import android.graphics.Path; import android.text.SpannableStringBuilder; import android.text.style.ReplacementSpan; import android.text.style.UnderlineSpan; import com.squareup.leakcanary.R; /* loaded from: classes.dex */ class SquigglySpan extends ReplacementSpan { private final float amplitude; private final float halfStrokeWidth; private final float halfWaveHeight; private final Path path; private final float periodDegrees; private final int referenceColor; private final Paint squigglyPaint = new Paint(1); private int width; SquigglySpan(Resources resources) { this.squigglyPaint.setStyle(Paint.Style.STROKE); this.squigglyPaint.setColor(resources.getColor(R.color.leak_canary_leak)); float dimensionPixelSize = resources.getDimensionPixelSize(R.dimen.leak_canary_squiggly_span_stroke_width); this.squigglyPaint.setStrokeWidth(dimensionPixelSize); this.halfStrokeWidth = dimensionPixelSize / 2.0f; this.amplitude = resources.getDimensionPixelSize(R.dimen.leak_canary_squiggly_span_amplitude); this.periodDegrees = resources.getDimensionPixelSize(R.dimen.leak_canary_squiggly_span_period_degrees); this.path = new Path(); this.halfWaveHeight = ((this.amplitude * 2.0f) + dimensionPixelSize) / 2.0f; this.referenceColor = resources.getColor(R.color.leak_canary_reference); } public static void replaceUnderlineSpans(SpannableStringBuilder spannableStringBuilder, Resources resources) { for (UnderlineSpan underlineSpan : (UnderlineSpan[]) spannableStringBuilder.getSpans(0, spannableStringBuilder.length(), UnderlineSpan.class)) { int spanStart = spannableStringBuilder.getSpanStart(underlineSpan); int spanEnd = spannableStringBuilder.getSpanEnd(underlineSpan); spannableStringBuilder.removeSpan(underlineSpan); spannableStringBuilder.setSpan(new SquigglySpan(resources), spanStart, spanEnd, 0); } } private static void squigglyHorizontalPath(Path path, float f, float f2, float f3, float f4, float f5) { path.reset(); path.moveTo(f, f3); float f6 = (float) (6.283185307179586d / f5); for (float f7 = 0.0f; f7 <= f2 - f; f7 += 1.0f) { path.lineTo(f + f7, (float) ((f4 * Math.sin((f6 * f7) + 40.0f)) + f3)); } } @Override // android.text.style.ReplacementSpan public void draw(Canvas canvas, CharSequence charSequence, int i, int i2, float f, int i3, int i4, int i5, Paint paint) { Path path = this.path; float f2 = this.halfStrokeWidth; squigglyHorizontalPath(path, f + f2, (this.width + f) - f2, i5 - this.halfWaveHeight, this.amplitude, this.periodDegrees); canvas.drawPath(this.path, this.squigglyPaint); paint.setColor(this.referenceColor); canvas.drawText(charSequence, i, i2, f, i4, paint); } @Override // android.text.style.ReplacementSpan public int getSize(Paint paint, CharSequence charSequence, int i, int i2, Paint.FontMetricsInt fontMetricsInt) { this.width = (int) paint.measureText(charSequence, i, i2); return this.width; } }