summaryrefslogtreecommitdiff
path: root/Source/WebCore/platform/graphics/qt/ImageBufferDataQt.h
diff options
context:
space:
mode:
authorOswald Buddenhagen <oswald.buddenhagen@qt.io>2017-05-30 12:48:17 +0200
committerOswald Buddenhagen <oswald.buddenhagen@qt.io>2017-05-30 12:48:17 +0200
commit881da28418d380042aa95a97f0cbd42560a64f7c (patch)
treea794dff3274695e99c651902dde93d934ea7a5af /Source/WebCore/platform/graphics/qt/ImageBufferDataQt.h
parent7e104c57a70fdf551bb3d22a5d637cdcbc69dbea (diff)
parent0fcedcd17cc00d3dd44c718b3cb36c1033319671 (diff)
downloadqtwebkit-881da28418d380042aa95a97f0cbd42560a64f7c.tar.gz
Merge 'wip/next' into dev
Change-Id: Iff9ee5e23bb326c4371ec8ed81d56f2f05d680e9
Diffstat (limited to 'Source/WebCore/platform/graphics/qt/ImageBufferDataQt.h')
-rw-r--r--Source/WebCore/platform/graphics/qt/ImageBufferDataQt.h27
1 files changed, 15 insertions, 12 deletions
diff --git a/Source/WebCore/platform/graphics/qt/ImageBufferDataQt.h b/Source/WebCore/platform/graphics/qt/ImageBufferDataQt.h
index fcad887d3..2ead943ca 100644
--- a/Source/WebCore/platform/graphics/qt/ImageBufferDataQt.h
+++ b/Source/WebCore/platform/graphics/qt/ImageBufferDataQt.h
@@ -28,9 +28,11 @@
#include "Image.h"
+#include "PlatformLayer.h"
+
#include <QImage>
-#include <QPainter>
#include <QPaintDevice>
+#include <QPainter>
#if ENABLE(ACCELERATED_2D_CANVAS)
#include <QOpenGLContext>
@@ -46,22 +48,22 @@ struct ImageBufferDataPrivate {
virtual ~ImageBufferDataPrivate() { }
virtual QPaintDevice* paintDevice() = 0;
virtual QImage toQImage() const = 0;
- virtual PassRefPtr<Image> image() const = 0;
- virtual PassRefPtr<Image> copyImage() const = 0;
+ virtual RefPtr<Image> image() const = 0;
+ virtual RefPtr<Image> copyImage() const = 0;
+ virtual RefPtr<Image> takeImage() = 0;
virtual bool isAccelerated() const = 0;
virtual PlatformLayer* platformLayer() = 0;
- virtual void draw(GraphicsContext* destContext, ColorSpace styleColorSpace, const FloatRect& destRect,
- const FloatRect& srcRect, CompositeOperator op, BlendMode blendMode, bool useLowQualityScale,
- bool ownContext) = 0;
- virtual void drawPattern(GraphicsContext* destContext, const FloatRect& srcRect, const AffineTransform& patternTransform,
- const FloatPoint& phase, ColorSpace styleColorSpace, CompositeOperator op,
- const FloatRect& destRect, bool ownContext) = 0;
- virtual void clip(GraphicsContext* context, const FloatRect& floatRect) const = 0;
+ virtual void draw(GraphicsContext& destContext, const FloatRect& destRect,
+ const FloatRect& srcRect, CompositeOperator, BlendMode,
+ bool ownContext) = 0;
+ virtual void drawPattern(GraphicsContext& destContext, const FloatRect& srcRect, const AffineTransform& patternTransform,
+ const FloatPoint& phase, const FloatSize& spacing, CompositeOperator,
+ const FloatRect& destRect, BlendMode, bool ownContext) = 0;
+ virtual void clip(GraphicsContext&, const IntRect& floatRect) const = 0;
virtual void platformTransformColorSpace(const Vector<int>& lookUpTable) = 0;
};
-class ImageBufferData
-{
+class ImageBufferData {
public:
ImageBufferData(const IntSize&);
#if ENABLE(ACCELERATED_2D_CANVAS)
@@ -69,6 +71,7 @@ public:
#endif
~ImageBufferData();
QPainter* m_painter;
+ std::unique_ptr<GraphicsContext> m_context;
ImageBufferDataPrivate* m_impl;
protected:
void initPainter();