summaryrefslogtreecommitdiffstats
path: root/Source/WebCore/platform/graphics/android/context/PlatformGraphicsContextRecording.h
diff options
context:
space:
mode:
authorJohn Reck <jreck@google.com>2012-07-19 13:01:13 -0700
committerJohn Reck <jreck@google.com>2012-07-19 13:04:23 -0700
commit6fda3e621352a695b3b6a02c6008d372b7c6febc (patch)
tree88b9f79255b25157b408874105e92540f0d88dd0 /Source/WebCore/platform/graphics/android/context/PlatformGraphicsContextRecording.h
parenteb8e22896b89fd99a56a0e70888838ca22a558cf (diff)
downloadexternal_webkit-6fda3e621352a695b3b6a02c6008d372b7c6febc.zip
external_webkit-6fda3e621352a695b3b6a02c6008d372b7c6febc.tar.gz
external_webkit-6fda3e621352a695b3b6a02c6008d372b7c6febc.tar.bz2
Support beginTransparentLayer
Handle it the same as a save/restore, but split up the SkMatrix handling as beginTransparentLayer does not save the matrix Also, enable RecordingContext by default, as all major known issues should be fixed now. Change-Id: I414556f65d5de704e2ce18e44a87d932b937993b
Diffstat (limited to 'Source/WebCore/platform/graphics/android/context/PlatformGraphicsContextRecording.h')
-rw-r--r--Source/WebCore/platform/graphics/android/context/PlatformGraphicsContextRecording.h8
1 files changed, 5 insertions, 3 deletions
diff --git a/Source/WebCore/platform/graphics/android/context/PlatformGraphicsContextRecording.h b/Source/WebCore/platform/graphics/android/context/PlatformGraphicsContextRecording.h
index 3affff3..6c51852 100644
--- a/Source/WebCore/platform/graphics/android/context/PlatformGraphicsContextRecording.h
+++ b/Source/WebCore/platform/graphics/android/context/PlatformGraphicsContextRecording.h
@@ -146,9 +146,12 @@ private:
void appendDrawingOperation(GraphicsOperation::Operation* operation, const FloatRect& bounds);
void appendStateOperation(GraphicsOperation::Operation* operation);
void onCurrentMatrixChanged();
+ void pushSaveOperation(GraphicsOperation::Save* saveOp);
+ void popSaveOperation();
+ void pushMatrix();
+ void popMatrix();
SkPicture* mPicture;
- SkMatrix mRootMatrix;
SkMatrix* mCurrentMatrix;
// Used for getTotalMatrix, is not valid elsewhere
SkMatrix mTotalMatrix;
@@ -167,7 +170,6 @@ private:
, mHasDrawing(other.mHasDrawing)
, mHasClip(other.mHasClip)
, mBounds(other.mBounds)
- , mMatrix(other.mMatrix)
{}
void addBounds(const FloatRect& bounds)
@@ -187,9 +189,9 @@ private:
bool mHasDrawing;
bool mHasClip;
FloatRect mBounds;
- SkMatrix mMatrix;
};
Vector<RecordingState> mRecordingStateStack;
+ Vector<SkMatrix> mMatrixStack;
State* mOperationState;
SkMatrix* mOperationMatrix;
};