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

Unified Diff: Source/core/rendering/FilterEffectRenderer.h

Issue 14652016: Implement filter primitive subregion for reference CSS filters. This required refactoring determin… (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 7 years, 8 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: Source/core/rendering/FilterEffectRenderer.h
diff --git a/Source/core/rendering/FilterEffectRenderer.h b/Source/core/rendering/FilterEffectRenderer.h
index 89bfdee33a5f5f46ed9e583dc9e2c41d0dae79a4..dd3149fb29820939c3370ed9a32c5a79292d0900 100644
--- a/Source/core/rendering/FilterEffectRenderer.h
+++ b/Source/core/rendering/FilterEffectRenderer.h
@@ -88,14 +88,15 @@ public:
virtual void setSourceImageRect(const FloatRect& sourceImageRect)
{
m_sourceDrawingRegion = sourceImageRect;
- setMaxEffectRects(sourceImageRect);
setFilterRegion(sourceImageRect);
+ lastEffect()->determineFilterPrimitiveSubregion();
m_graphicsBufferAttached = false;
}
virtual FloatRect sourceImageRect() const { return m_sourceDrawingRegion; }
virtual void setFilterRegion(const FloatRect& filterRegion) { m_filterRegion = filterRegion; }
virtual FloatRect filterRegion() const { return m_filterRegion; }
+ virtual FloatRect filterRegionInUserSpace() const { return m_filterRegion; }
GraphicsContext* inputContext();
ImageBuffer* output() const { return lastEffect()->asImageBuffer(); }
@@ -114,13 +115,6 @@ public:
bool hasCustomShaderFilter() const { return m_hasCustomShaderFilter; }
private:
- void setMaxEffectRects(const FloatRect& effectRect)
- {
- for (size_t i = 0; i < m_effects.size(); ++i) {
- RefPtr<FilterEffect> effect = m_effects.at(i);
- effect->setMaxEffectRect(effectRect);
- }
- }
PassRefPtr<FilterEffect> lastEffect() const
{
if (m_effects.size() > 0)

Powered by Google App Engine
This is Rietveld 408576698