Bug 243816
| Summary: | [Filters] Support CoreGraphics filter | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Said Abou-Hallawa <sabouhallawa> |
| Component: | Layout and Rendering | Assignee: | Said Abou-Hallawa <sabouhallawa> |
| Status: | RESOLVED FIXED | ||
| Severity: | Normal | CC: | bfulgham, heycam, simon.fraser, webkit-bug-importer, zalan |
| Priority: | P2 | Keywords: | InRadar |
| Version: | WebKit Nightly Build | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Bug Depends on: | 248175, 248180, 248181, 248193, 248197, 248318, 248354, 248375, 248483, 248587, 249753, 261925, 267354, 267566, 290845, 293212, 298425, 298453, 298501, 298544, 298845, 299063, 299189 | ||
| Bug Blocks: | |||
Said Abou-Hallawa
Software filters use ImageBuffers to generate the result of their applying to the target element. These buffers can take significant amount of memory if the target element is large or the number of effects are big.
CoreGraphics provides a better way to apply FilterEffects. A CGStyle can be used to apply the a FilterEffect to the current drawing. Also beginTransparencyLayer()/endTransparencyLayer() can be used to force applying the FilterEffect only when composting the layer to the destination GraphicsContext. This will treat the drawing commands between beginning and ending the transparency layer as a unit of drawing.
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Said Abou-Hallawa
Pull request: https://github.com/WebKit/WebKit/pull/3216
Radar WebKit Bug Importer
<rdar://problem/98820279>
Cameron McCormack (:heycam)
rdar://115870393
Simon Fraser (smfr)
Blur is the only one left unsupported after fixing bug 290845.
Said Abou-Hallawa
The CGStyle-based blur filter was enabled by bug 267566.