aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--include/core/SkPaint.h5
-rw-r--r--src/core/SkPaint.cpp9
-rw-r--r--src/views/animated/SkStaticTextView.cpp9
-rw-r--r--tests/PaintTest.cpp19
4 files changed, 17 insertions, 25 deletions
diff --git a/include/core/SkPaint.h b/include/core/SkPaint.h
index fa0c61e4ea..ac46760abd 100644
--- a/include/core/SkPaint.h
+++ b/include/core/SkPaint.h
@@ -67,11 +67,6 @@ public:
SkPaint& operator=(const SkPaint&);
- SK_API friend bool operator==(const SkPaint& a, const SkPaint& b);
- friend bool operator!=(const SkPaint& a, const SkPaint& b) {
- return !(a == b);
- }
-
void flatten(SkFlattenableWriteBuffer&) const;
void unflatten(SkFlattenableReadBuffer&);
diff --git a/src/core/SkPaint.cpp b/src/core/SkPaint.cpp
index 372e68051e..328836624c 100644
--- a/src/core/SkPaint.cpp
+++ b/src/core/SkPaint.cpp
@@ -161,15 +161,6 @@ SkPaint& SkPaint::operator=(const SkPaint& src) {
return *this;
}
-bool operator==(const SkPaint& a, const SkPaint& b) {
-#ifdef SK_BUILD_FOR_ANDROID
- //assumes that fGenerationID is the last field in the struct
- return !memcmp(&a, &b, SK_OFFSETOF(SkPaint, fGenerationID));
-#else
- return !memcmp(&a, &b, sizeof(a));
-#endif
-}
-
void SkPaint::reset() {
SkPaint init;
diff --git a/src/views/animated/SkStaticTextView.cpp b/src/views/animated/SkStaticTextView.cpp
index 0e4cad63e5..bbef63dff3 100644
--- a/src/views/animated/SkStaticTextView.cpp
+++ b/src/views/animated/SkStaticTextView.cpp
@@ -125,12 +125,9 @@ void SkStaticTextView::getPaint(SkPaint* paint) const
void SkStaticTextView::setPaint(const SkPaint& paint)
{
- if (fPaint != paint)
- {
- fPaint = paint;
- this->computeSize();
- this->inval(NULL);
- }
+ fPaint = paint;
+ this->computeSize();
+ this->inval(NULL);
}
void SkStaticTextView::onDraw(SkCanvas* canvas)
diff --git a/tests/PaintTest.cpp b/tests/PaintTest.cpp
index e25c7c3f08..d71d12fc74 100644
--- a/tests/PaintTest.cpp
+++ b/tests/PaintTest.cpp
@@ -133,6 +133,15 @@ static void test_filterlevel(skiatest::Reporter* reporter) {
}
}
+// Only useful for test_copy. Checks the fields that are set.
+static bool check_equal(const SkPaint& a, const SkPaint &b) {
+ return a.getLooper() == b.getLooper() &&
+ a.getMaskFilter() == b.getMaskFilter() &&
+ a.getStrokeWidth() == b.getStrokeWidth() &&
+ a.getStyle() == b.getStyle() &&
+ a.getTextAlign() == b.getTextAlign();
+}
+
static void test_copy(skiatest::Reporter* reporter) {
SkPaint paint;
// set a few member variables
@@ -147,19 +156,19 @@ static void test_copy(skiatest::Reporter* reporter) {
// copy the paint using the copy constructor and check they are the same
SkPaint copiedPaint = paint;
- REPORTER_ASSERT(reporter, paint == copiedPaint);
+ REPORTER_ASSERT(reporter, check_equal(paint, copiedPaint));
#ifdef SK_BUILD_FOR_ANDROID
// the copy constructor should preserve the Generation ID
uint32_t paintGenID = paint.getGenerationID();
uint32_t copiedPaintGenID = copiedPaint.getGenerationID();
REPORTER_ASSERT(reporter, paintGenID == copiedPaintGenID);
- REPORTER_ASSERT(reporter, !memcmp(&paint, &copiedPaint, sizeof(paint)));
+ REPORTER_ASSERT(reporter, check_equal(paint, copiedPaint));
#endif
// copy the paint using the equal operator and check they are the same
copiedPaint = paint;
- REPORTER_ASSERT(reporter, paint == copiedPaint);
+ REPORTER_ASSERT(reporter, check_equal(paint, copiedPaint));
#ifdef SK_BUILD_FOR_ANDROID
// the equals operator should increment the Generation ID
@@ -173,8 +182,8 @@ static void test_copy(skiatest::Reporter* reporter) {
SkPaint cleanPaint;
paint.reset();
copiedPaint.reset();
- REPORTER_ASSERT(reporter, cleanPaint == paint);
- REPORTER_ASSERT(reporter, cleanPaint == copiedPaint);
+ REPORTER_ASSERT(reporter, check_equal(cleanPaint, paint));
+ REPORTER_ASSERT(reporter, check_equal(cleanPaint, copiedPaint));
#ifdef SK_BUILD_FOR_ANDROID
// the reset function should increment the Generation ID