Index: Source/platform/graphics/Pattern.h |
diff --git a/Source/platform/graphics/Pattern.h b/Source/platform/graphics/Pattern.h |
index c8010f6875eedbc9fc06f97d74c2842c08329ee6..a2ecdeb442ba914719685149b238a6564157b234 100644 |
--- a/Source/platform/graphics/Pattern.h |
+++ b/Source/platform/graphics/Pattern.h |
@@ -29,17 +29,21 @@ |
#ifndef Pattern_h |
#define Pattern_h |
-#include "SkShader.h" |
#include "platform/PlatformExport.h" |
-#include "platform/graphics/Image.h" |
#include "platform/transforms/AffineTransform.h" |
#include "wtf/PassRefPtr.h" |
#include "wtf/RefCounted.h" |
#include "wtf/RefPtr.h" |
+class SkShader; |
+ |
namespace blink { |
+class DisplayList; |
+class Image; |
+class NativeImageSkia; |
+ |
class PLATFORM_EXPORT Pattern : public RefCounted<Pattern> { |
public: |
enum RepeatMode { |
@@ -52,6 +56,8 @@ public: |
static PassRefPtr<Pattern> createBitmapPattern(PassRefPtr<Image> tileImage, |
RepeatMode = RepeatModeXY); |
+ static PassRefPtr<Pattern> createDisplayListPattern(PassRefPtr<DisplayList>, |
+ RepeatMode = RepeatModeXY); |
~Pattern(); |
SkShader* shader(); |
@@ -60,8 +66,10 @@ public: |
private: |
Pattern(PassRefPtr<Image>, RepeatMode); |
+ Pattern(PassRefPtr<DisplayList>, RepeatMode); |
RefPtr<NativeImageSkia> m_tileImage; |
+ RefPtr<DisplayList> m_tileDisplayList; |
RepeatMode m_repeatMode; |
AffineTransform m_patternSpaceTransformation; |
RefPtr<SkShader> m_pattern; |