| Index: third_party/WebKit/Source/platform/graphics/paint/TransformPaintPropertyNode.h
|
| diff --git a/third_party/WebKit/Source/platform/graphics/paint/TransformPaintPropertyNode.h b/third_party/WebKit/Source/platform/graphics/paint/TransformPaintPropertyNode.h
|
| index 1481e60d7c64ce13a5e2294415e9a1fcd59defaf..1020a2075f5daac42b90c354617e84a38ff99269 100644
|
| --- a/third_party/WebKit/Source/platform/graphics/paint/TransformPaintPropertyNode.h
|
| +++ b/third_party/WebKit/Source/platform/graphics/paint/TransformPaintPropertyNode.h
|
| @@ -21,16 +21,23 @@ namespace blink {
|
| // for the root.
|
| class PLATFORM_EXPORT TransformPaintPropertyNode : public RefCounted<TransformPaintPropertyNode> {
|
| public:
|
| - static PassRefPtr<TransformPaintPropertyNode> create(PassRefPtr<TransformPaintPropertyNode> parent, const TransformationMatrix& matrix, const FloatPoint3D& origin)
|
| + static PassRefPtr<TransformPaintPropertyNode> create(
|
| + PassRefPtr<TransformPaintPropertyNode> parent,
|
| + const TransformationMatrix& matrix,
|
| + const FloatPoint3D& origin,
|
| + bool flattensInheritedTransform = false,
|
| + unsigned renderingContextID = 0)
|
| {
|
| - return adoptRef(new TransformPaintPropertyNode(parent, matrix, origin));
|
| + return adoptRef(new TransformPaintPropertyNode(matrix, origin, parent, flattensInheritedTransform, renderingContextID));
|
| }
|
|
|
| - void update(PassRefPtr<TransformPaintPropertyNode> parent, const TransformationMatrix& matrix, const FloatPoint3D& origin)
|
| + void update(PassRefPtr<TransformPaintPropertyNode> parent, const TransformationMatrix& matrix, const FloatPoint3D& origin, bool flattensInheritedTransform = false, unsigned renderingContextID = 0)
|
| {
|
| m_parent = parent;
|
| m_matrix = matrix;
|
| m_origin = origin;
|
| + m_flattensInheritedTransform = flattensInheritedTransform;
|
| + m_renderingContextID = renderingContextID;
|
| }
|
|
|
| const TransformationMatrix& matrix() const { return m_matrix; }
|
| @@ -40,13 +47,36 @@ public:
|
| // is the root transform.
|
| TransformPaintPropertyNode* parent() const { return m_parent.get(); }
|
|
|
| + // If true, content with this transform node (or its descendant) appears in
|
| + // the plane of its parent. This is implemented by flattening the total
|
| + // accumulated transform from its ancestors.
|
| + bool flattensInheritedTransform() const { return m_flattensInheritedTransform; }
|
| +
|
| + // Content whose transform nodes have a common rendering context ID are 3D
|
| + // sorted. If this is 0, content will not be 3D sorted.
|
| + unsigned renderingContextID() const { return m_renderingContextID; }
|
| + bool hasRenderingContext() const { return m_renderingContextID; }
|
| +
|
| private:
|
| - TransformPaintPropertyNode(PassRefPtr<TransformPaintPropertyNode> parent, const TransformationMatrix& matrix, const FloatPoint3D& origin)
|
| - : m_parent(parent), m_matrix(matrix), m_origin(origin) { }
|
| + TransformPaintPropertyNode(
|
| + const TransformationMatrix& matrix,
|
| + const FloatPoint3D& origin,
|
| + PassRefPtr<TransformPaintPropertyNode> parent,
|
| + bool flattensInheritedTransform,
|
| + unsigned renderingContextID)
|
| + : m_matrix(matrix)
|
| + , m_origin(origin)
|
| + , m_parent(parent)
|
| + , m_flattensInheritedTransform(flattensInheritedTransform)
|
| + , m_renderingContextID(renderingContextID)
|
| + {
|
| + }
|
|
|
| - RefPtr<TransformPaintPropertyNode> m_parent;
|
| TransformationMatrix m_matrix;
|
| FloatPoint3D m_origin;
|
| + RefPtr<TransformPaintPropertyNode> m_parent;
|
| + bool m_flattensInheritedTransform;
|
| + unsigned m_renderingContextID;
|
| };
|
|
|
| // Redeclared here to avoid ODR issues.
|
|
|