Permalink
Show file tree
Hide file tree
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Browse files
[GPU Process] Introduce FilterFunction and make it the base class of …
…Filter and FilterEffect https://bugs.webkit.org/show_bug.cgi?id=232413 rdar://84966765 Reviewed by Myles C. Maxfield. This allows CSSFilter to hold a list of FilterFunctions. The Filter in this case will act like a composite pattern of FilterEffects. This patch also 1. Removes the virtual function filterName() from all the FilterEffect classes. It replaces it with a static function in FilterFunction. 2. Removes the virtual function filterEffectType() and the function FilterEffect::filterEffectClassType() since they can both be replaced by FilterFunction::filterType(). 3. Adds trait macros for all FilterEffects and the SVGFilters class. * Sources.txt: * WebCore.xcodeproj/project.pbxproj: * platform/graphics/coreimage/FilterEffectRendererCoreImage.mm: (WebCore::FilterEffectRendererCoreImage::supportsCoreImageRendering): (WebCore::FilterEffectRendererCoreImage::connectCIFilters): * platform/graphics/filters/FEBlend.cpp: (WebCore::FEBlend::FEBlend): * platform/graphics/filters/FEBlend.h: (): Deleted. * platform/graphics/filters/FEColorMatrix.cpp: (WebCore::FEColorMatrix::FEColorMatrix): * platform/graphics/filters/FEColorMatrix.h: (isType): Deleted. * platform/graphics/filters/FEComponentTransfer.cpp: (WebCore::FEComponentTransfer::FEComponentTransfer): * platform/graphics/filters/FEComponentTransfer.h: (isType): Deleted. * platform/graphics/filters/FEComposite.cpp: (WebCore::FEComposite::FEComposite): * platform/graphics/filters/FEComposite.h: * platform/graphics/filters/FEConvolveMatrix.cpp: (WebCore::FEConvolveMatrix::FEConvolveMatrix): * platform/graphics/filters/FEConvolveMatrix.h: * platform/graphics/filters/FEDiffuseLighting.cpp: (WebCore::FEDiffuseLighting::FEDiffuseLighting): * platform/graphics/filters/FEDiffuseLighting.h: * platform/graphics/filters/FEDisplacementMap.cpp: (WebCore::FEDisplacementMap::FEDisplacementMap): * platform/graphics/filters/FEDisplacementMap.h: * platform/graphics/filters/FEDropShadow.cpp: (WebCore::FEDropShadow::FEDropShadow): * platform/graphics/filters/FEDropShadow.h: (): Deleted. * platform/graphics/filters/FEFlood.cpp: (WebCore::FEFlood::FEFlood): * platform/graphics/filters/FEFlood.h: * platform/graphics/filters/FEGaussianBlur.cpp: (WebCore::FEGaussianBlur::FEGaussianBlur): * platform/graphics/filters/FEGaussianBlur.h: (): Deleted. * platform/graphics/filters/FELighting.h: * platform/graphics/filters/FEMerge.cpp: (WebCore::FEMerge::FEMerge): * platform/graphics/filters/FEMerge.h: (): Deleted. * platform/graphics/filters/FEMorphology.cpp: (WebCore::FEMorphology::FEMorphology): * platform/graphics/filters/FEMorphology.h: * platform/graphics/filters/FEOffset.cpp: (WebCore::FEOffset::FEOffset): * platform/graphics/filters/FEOffset.h: (): Deleted. * platform/graphics/filters/FESpecularLighting.cpp: (WebCore::FESpecularLighting::FESpecularLighting): * platform/graphics/filters/FESpecularLighting.h: * platform/graphics/filters/FETile.cpp: (WebCore::FETile::FETile): (WebCore::FETile::platformApplySoftware): * platform/graphics/filters/FETile.h: * platform/graphics/filters/FETurbulence.cpp: (WebCore::FETurbulence::FETurbulence): * platform/graphics/filters/FETurbulence.h: * platform/graphics/filters/Filter.h: (WebCore::Filter::Filter): * platform/graphics/filters/FilterEffect.cpp: (WebCore::FilterEffect::FilterEffect): (WebCore::FilterEffect::determineFilterPrimitiveSubregion): (WebCore::FilterEffect::createImageBufferResult): (WebCore::FilterEffect::createUnmultipliedImageResult): (WebCore::FilterEffect::createPremultipliedImageResult): * platform/graphics/filters/FilterEffect.h: (isType): (WebCore::FilterEffect::filterEffectType const): Deleted. (WebCore::FilterEffect::filterEffectClassType const): Deleted. * platform/graphics/filters/FilterFunction.cpp: Added. (WebCore::FilterFunction::FilterFunction): (WebCore::FilterFunction::filterName): * platform/graphics/filters/FilterFunction.h: Added. (WebCore::FilterFunction::filterType const): (WebCore::FilterFunction::isCSSFilter const): (WebCore::FilterFunction::isSVGFilter const): (WebCore::FilterFunction::isFilter const): (WebCore::FilterFunction::isFilterEffect const): (WebCore::FilterFunction::sourceAlphaName): (WebCore::FilterFunction::sourceGraphicName): (WebCore::FilterFunction::filterName const): * platform/graphics/filters/SourceAlpha.cpp: (WebCore::SourceAlpha::SourceAlpha): (WebCore::SourceAlpha::effectName): Deleted. * platform/graphics/filters/SourceAlpha.h: (WebCore::SourceAlpha::effectName): (): Deleted. * platform/graphics/filters/SourceGraphic.cpp: (WebCore::SourceGraphic::effectName): Deleted. * platform/graphics/filters/SourceGraphic.h: (WebCore::SourceGraphic::effectName): (WebCore::SourceGraphic::SourceGraphic): (): Deleted. (isType): Deleted. * platform/mediastream/mac/RealtimeIncomingAudioSourceCocoa.cpp: * rendering/CSSFilter.cpp: (WebCore::CSSFilter::CSSFilter): * svg/graphics/filters/SVGFEImage.cpp: (WebCore::FEImage::FEImage): * svg/graphics/filters/SVGFEImage.h: * svg/graphics/filters/SVGFilter.cpp: (WebCore::SVGFilter::SVGFilter): * svg/graphics/filters/SVGFilter.h: (isType): * svg/graphics/filters/SVGFilterBuilder.cpp: Canonical link: https://commits.webkit.org/244057@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@285543 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- Loading branch information
Showing
53 changed files
with
420 additions
and
223 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.