Bug 243816 - [Filters] Support CoreGraphics filters
Summary: [Filters] Support CoreGraphics filters
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: Layout and Rendering (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Said Abou-Hallawa
URL:
Keywords: InRadar
Depends on: 249753 267566 248175 248180 248181 248193 248197 248318 248354 248375 248483 248587 261925 267354
Blocks:
  Show dependency treegraph
 
Reported: 2022-08-11 01:23 PDT by Said Abou-Hallawa
Modified: 2024-01-15 21:22 PST (History)
5 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Said Abou-Hallawa 2022-08-11 01:23:23 PDT
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.
Comment 1 Said Abou-Hallawa 2022-08-11 01:30:16 PDT
Pull request: https://github.com/WebKit/WebKit/pull/3216
Comment 2 Radar WebKit Bug Importer 2022-08-18 01:24:16 PDT
<rdar://problem/98820279>
Comment 3 Cameron McCormack (:heycam) 2023-09-21 18:05:39 PDT
rdar://115870393