Index: third_party/WebKit/Source/core/paint/PaintLayerFilterInfo.cpp |
diff --git a/third_party/WebKit/Source/core/paint/PaintLayerFilterInfo.cpp b/third_party/WebKit/Source/core/paint/PaintLayerFilterInfo.cpp |
index b2334a401e695d71a91f10ede4e37182aba8bdd4..d34a1825a7f7ea06a842c17ba4bf820070e4d4e3 100644 |
--- a/third_party/WebKit/Source/core/paint/PaintLayerFilterInfo.cpp |
+++ b/third_party/WebKit/Source/core/paint/PaintLayerFilterInfo.cpp |
@@ -30,7 +30,6 @@ |
#include "core/paint/PaintLayerFilterInfo.h" |
#include "core/paint/PaintLayer.h" |
-#include "core/style/FilterOperations.h" |
#include "platform/graphics/filters/FilterEffect.h" |
namespace blink { |
@@ -42,19 +41,34 @@ PaintLayerFilterInfo::~PaintLayerFilterInfo() { |
DCHECK(!m_layer); |
} |
+TreeScope* PaintLayerFilterInfo::treeScope() { |
+ DCHECK(m_layer); |
+ Node* node = m_layer->layoutObject()->node(); |
+ return node ? &node->treeScope() : nullptr; |
+} |
+ |
+void PaintLayerFilterInfo::resourceContentChanged() { |
+ DCHECK(m_layer); |
+ m_layer->layoutObject()->setShouldDoFullPaintInvalidation(); |
+ invalidateFilterChain(); |
+} |
+ |
+void PaintLayerFilterInfo::resourceElementChanged() { |
+ DCHECK(m_layer); |
+ m_layer->layoutObject()->setShouldDoFullPaintInvalidation(); |
+ invalidateFilterChain(); |
+} |
+ |
void PaintLayerFilterInfo::setLastEffect(FilterEffect* lastEffect) { |
m_lastEffect = lastEffect; |
} |
-void PaintLayerFilterInfo::updateReferenceFilterClients( |
- const FilterOperations& operations) { |
- clearFilterReferences(); |
- addFilterReferences(operations, m_layer->layoutObject()->document()); |
+FilterEffect* PaintLayerFilterInfo::lastEffect() const { |
+ return m_lastEffect; |
} |
-void PaintLayerFilterInfo::filterNeedsInvalidation() { |
- if (m_layer) |
- m_layer->filterNeedsPaintInvalidation(); |
+void PaintLayerFilterInfo::invalidateFilterChain() { |
+ m_lastEffect = nullptr; |
} |
DEFINE_TRACE(PaintLayerFilterInfo) { |