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

Unified Diff: Source/core/paint/FilterPainter.h

Issue 721773005: [Slimming Paint] Add *FilterDisplayItem type for slimming paint (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 1 month 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 | Source/core/paint/FilterPainter.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/core/paint/FilterPainter.h
diff --git a/Source/core/paint/FilterPainter.h b/Source/core/paint/FilterPainter.h
index 7bcb140f44ca335eaa9d062410a5ad7091de2ac6..3af6ab56a0b6364344e489a33c00aa62dc065a4f 100644
--- a/Source/core/paint/FilterPainter.h
+++ b/Source/core/paint/FilterPainter.h
@@ -5,6 +5,7 @@
#ifndef FilterPainter_h
#define FilterPainter_h
+#include "core/paint/ViewDisplayList.h"
#include "core/rendering/LayerPaintingInfo.h"
#include "wtf/OwnPtr.h"
@@ -16,6 +17,31 @@ class FloatRect;
class GraphicsContext;
class RenderLayer;
+class BeginFilterDisplayItem : public DisplayItem {
+public:
+ BeginFilterDisplayItem(const RenderObject* renderer, Type type, PassRefPtr<ImageFilter> imageFilter, const LayoutRect& bounds)
+ : DisplayItem(renderer, type), m_imageFilter(imageFilter), m_bounds(bounds) { }
+ virtual void replay(GraphicsContext*) override;
+
+#ifndef NDEBUG
+ virtual WTF::String asDebugString() const override;
+#endif
+
+ RefPtr<ImageFilter> m_imageFilter;
+ const LayoutRect m_bounds;
+};
+
+class EndFilterDisplayItem : public DisplayItem {
+public:
+ EndFilterDisplayItem(const RenderObject* renderer)
+ : DisplayItem(renderer, EndFilter) { }
+ virtual void replay(GraphicsContext*) override;
+
+#ifndef NDEBUG
+ virtual WTF::String asDebugString() const override;
+#endif
+};
+
class FilterPainter {
public:
FilterPainter(RenderLayer&, GraphicsContext*, const LayoutPoint& offsetFromRoot, const ClipRect&, LayerPaintingInfo&, PaintLayerFlags paintFlags, LayoutRect& rootRelativeBounds, bool& rootRelativeBoundsComputed);
@@ -25,6 +51,7 @@ private:
bool m_filterInProgress;
GraphicsContext* m_context;
OwnPtr<ClipRecorder> m_clipRecorder;
+ RenderObject* m_renderer;
};
} // namespace blink
« no previous file with comments | « no previous file | Source/core/paint/FilterPainter.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698