diff options
Diffstat (limited to 'graphics/java/android/graphics/drawable/shapes/RoundRectShape.java')
-rw-r--r-- | graphics/java/android/graphics/drawable/shapes/RoundRectShape.java | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/graphics/java/android/graphics/drawable/shapes/RoundRectShape.java b/graphics/java/android/graphics/drawable/shapes/RoundRectShape.java index f5cbb24a53ef..475e0bb70f2b 100644 --- a/graphics/java/android/graphics/drawable/shapes/RoundRectShape.java +++ b/graphics/java/android/graphics/drawable/shapes/RoundRectShape.java @@ -23,6 +23,9 @@ import android.graphics.Paint; import android.graphics.Path; import android.graphics.RectF; +import java.util.Arrays; +import java.util.Objects; + /** * Creates a rounded-corner rectangle. Optionally, an inset (rounded) rectangle * can be included (to make a sort of "O" shape). @@ -137,4 +140,31 @@ public class RoundRectShape extends RectShape { shape.mPath = new Path(mPath); return shape; } + + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + if (!super.equals(o)) { + return false; + } + RoundRectShape that = (RoundRectShape) o; + return Arrays.equals(mOuterRadii, that.mOuterRadii) + && Objects.equals(mInset, that.mInset) + && Arrays.equals(mInnerRadii, that.mInnerRadii) + && Objects.equals(mInnerRect, that.mInnerRect) + && Objects.equals(mPath, that.mPath); + } + + @Override + public int hashCode() { + int result = Objects.hash(super.hashCode(), mInset, mInnerRect, mPath); + result = 31 * result + Arrays.hashCode(mOuterRadii); + result = 31 * result + Arrays.hashCode(mInnerRadii); + return result; + } } |