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

Unified Diff: third_party/WebKit/Source/platform/graphics/paint/FilterDisplayItem.h

Issue 2297213003: Fix CSS reference filters with negative transformed children. (Closed)
Patch Set: Created 4 years, 4 months 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
Index: third_party/WebKit/Source/platform/graphics/paint/FilterDisplayItem.h
diff --git a/third_party/WebKit/Source/platform/graphics/paint/FilterDisplayItem.h b/third_party/WebKit/Source/platform/graphics/paint/FilterDisplayItem.h
index fb3d32f342b10cfd9190fa4a96f730cc58ebb637..34d4b5ba0b17b98841dbdb679fac8b94aa6aaa87 100644
--- a/third_party/WebKit/Source/platform/graphics/paint/FilterDisplayItem.h
+++ b/third_party/WebKit/Source/platform/graphics/paint/FilterDisplayItem.h
@@ -18,11 +18,12 @@ namespace blink {
class PLATFORM_EXPORT BeginFilterDisplayItem final : public PairedBeginDisplayItem {
public:
- BeginFilterDisplayItem(const DisplayItemClient& client, sk_sp<SkImageFilter> imageFilter, const FloatRect& bounds, CompositorFilterOperations filterOperations)
+ BeginFilterDisplayItem(const DisplayItemClient& client, sk_sp<SkImageFilter> imageFilter, const FloatRect& bounds, const FloatPoint& origin, CompositorFilterOperations filterOperations)
: PairedBeginDisplayItem(client, BeginFilter, sizeof(*this))
, m_imageFilter(std::move(imageFilter))
, m_compositorFilterOperations(std::move(filterOperations))
- , m_bounds(bounds) { }
+ , m_bounds(bounds)
+ , m_origin(origin) { }
void replay(GraphicsContext&) const override;
void appendToWebDisplayItemList(const IntRect&, WebDisplayItemList*) const override;
@@ -37,7 +38,8 @@ private:
{
return DisplayItem::equals(other)
// TODO(wangxianzhu): compare m_imageFilter and m_webFilterOperations.
- && m_bounds == static_cast<const BeginFilterDisplayItem&>(other).m_bounds;
+ && m_bounds == static_cast<const BeginFilterDisplayItem&>(other).m_bounds
+ && m_origin == static_cast<const BeginFilterDisplayItem&>(other).m_origin;
}
#endif
@@ -45,6 +47,7 @@ private:
sk_sp<SkImageFilter> m_imageFilter;
CompositorFilterOperations m_compositorFilterOperations;
const FloatRect m_bounds;
+ const FloatPoint m_origin;
};
class PLATFORM_EXPORT EndFilterDisplayItem final : public PairedEndDisplayItem {

Powered by Google App Engine
This is Rietveld 408576698