Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(884)

Unified Diff: include/core/SkPaint.h

Issue 158913005: Merge tomhudson and mtklein SkPaint shrinking approaches. (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: Don't unref typeface. Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | src/core/SkPaint.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: include/core/SkPaint.h
diff --git a/include/core/SkPaint.h b/include/core/SkPaint.h
index abb859950c5bb6a66aecccded690ca8cd6ae02a2..bf0f91ceb25e896493afbb3c2e98f8291be56e13 100644
--- a/include/core/SkPaint.h
+++ b/include/core/SkPaint.h
@@ -980,6 +980,11 @@ public:
SkDEVCODE(void toString(SkString*) const;)
+ struct FlatteningTraits {
+ static void Flatten(SkWriteBuffer& buffer, const SkPaint& paint);
+ static void Unflatten(SkReadBuffer& buffer, SkPaint* paint);
+ };
+
private:
SkTypeface* fTypeface;
SkScalar fTextSize;
@@ -999,15 +1004,25 @@ private:
SkColor fColor;
SkScalar fWidth;
SkScalar fMiterLimit;
- // all of these bitfields should add up to 32
- unsigned fFlags : 16;
- unsigned fTextAlign : 2;
- unsigned fCapType : 2;
- unsigned fJoinType : 2;
- unsigned fStyle : 2;
- unsigned fTextEncoding : 2; // 3 values
- unsigned fHinting : 2;
- //unsigned fFreeBits : 4;
+
+ union {
+ struct {
+ // all of these bitfields should add up to 32
+ unsigned fFlags : 16;
+ unsigned fTextAlign : 2;
+ unsigned fCapType : 2;
+ unsigned fJoinType : 2;
+ unsigned fStyle : 2;
+ unsigned fTextEncoding : 2; // 3 values
+ unsigned fHinting : 2;
+ //unsigned fFreeBits : 4;
+ };
+ uint32_t fBitfields;
+ };
+ uint32_t getBitfields() const { return fBitfields; }
+ void setBitfields(uint32_t bitfields);
+
+ uint32_t fDirtyBits;
SkDrawCacheProc getDrawCacheProc() const;
« no previous file with comments | « no previous file | src/core/SkPaint.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698