Changeset 44839 in webkit
- Timestamp:
- Jun 18, 2009 9:44:29 PM (15 years ago)
- Location:
- trunk
- Files:
-
- 4 added
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r44835 r44839 1 2009-06-18 Dirk Schulze <krit@webkit.org> 2 3 Reviewed by Oliver Hunt. 4 5 Check the feMerge implementation. 6 7 * platform/mac/svg/filters/feMerge-expected.checksum: Added. 8 * platform/mac/svg/filters/feMerge-expected.png: Added. 9 * platform/mac/svg/filters/feMerge-expected.txt: Added. 10 * svg/filters/feMerge.svg: Added. 11 1 12 2009-06-18 Chris Fleizach <cfleizach@apple.com> 2 13 -
trunk/WebCore/ChangeLog
r44837 r44839 1 2009-06-18 Dirk Schulze <krit@webkit.org> 2 3 Reviewed by Oliver Hunt. 4 5 feMerge implementation 6 [https://bugs.webkit.org/show_bug.cgi?id=26480] 7 8 Added feMerge to the SVG Filter system. 9 10 Test: svg/filters/feMerge.svg 11 12 * svg/graphics/filters/SVGFEMerge.cpp: 13 (WebCore::FEMerge::uniteChildEffectSubregions): 14 (WebCore::FEMerge::apply): 15 * svg/graphics/filters/SVGFEMerge.h: 16 1 17 2009-06-18 Mark Rowe <mrowe@apple.com> 2 18 -
trunk/WebCore/svg/graphics/filters/SVGFEMerge.cpp
r44655 r44839 24 24 #if ENABLE(SVG) && ENABLE(FILTERS) 25 25 #include "SVGFEMerge.h" 26 27 #include "Filter.h" 28 #include "GraphicsContext.h" 26 29 #include "SVGRenderTreeAsText.h" 27 #include "Filter.h"28 30 29 31 namespace WebCore { … … 50 52 } 51 53 52 FloatRect FEMerge::unite EffectRect(Filter* filter)54 FloatRect FEMerge::uniteChildEffectSubregions(Filter* filter) 53 55 { 54 if (m_mergeInputs.isEmpty()) 55 return FloatRect(); 56 ASSERT(!m_mergeInputs.isEmpty()); 56 57 57 58 FloatRect uniteEffectRect = m_mergeInputs[0]->calculateEffectRect(filter); … … 63 64 } 64 65 65 void FEMerge::apply(Filter* )66 void FEMerge::apply(Filter* filter) 66 67 { 68 ASSERT(!m_mergeInputs.isEmpty()); 69 70 for (unsigned i = 0; i < m_mergeInputs.size(); i++) { 71 m_mergeInputs[i]->apply(filter); 72 if (!m_mergeInputs[i]->resultImage()) 73 return; 74 } 75 76 GraphicsContext* filterContext = getEffectContext(); 77 if (!filterContext) 78 return; 79 80 for (unsigned i = 0; i < m_mergeInputs.size(); i++) { 81 FloatRect destRect = calculateDrawingRect(m_mergeInputs[i]->subRegion()); 82 filterContext->drawImage(m_mergeInputs[i]->resultImage()->image(), destRect); 83 } 67 84 } 68 85 -
trunk/WebCore/svg/graphics/filters/SVGFEMerge.h
r44655 r44839 37 37 void setMergeInputs(const Vector<FilterEffect*>& mergeInputs); 38 38 39 virtual FloatRect unite EffectRect(Filter*);39 virtual FloatRect uniteChildEffectSubregions(Filter*); 40 40 void apply(Filter*); 41 41 void dump();
Note: See TracChangeset
for help on using the changeset viewer.