-
Notifications
You must be signed in to change notification settings - Fork 29.5k
Description
Issue Link
Commit Hash
Target
stable
PR Link
Changelog Description
This is a combined cherry-pick of two dependent commits: flutter/engine@81d5adb and flutter/engine@53595c9.
The first commit enables applying color filters on the CPU, and the second commit fixes issues in the generic mask blurring path as well as geometry coordinate mapping problems in the Gaussian blur.
Medium risk due to large cherry-pick and the fact that this is a forward fix. This problem is difficult to fix without a series of risky reverts, and so this is a forward fix.
Impacted Users
This issue affects Impeller users on iOS.
Impact Description
This fixes a variety of rendering problems with Impeller shadows which are exacerbated by the presence of dirty regions. When elements are moving over the top of a non-animated shadow, the shadow may sometimes render as faded or become invisible.
Workaround
There are no simple workaround for this issue.
Risk
medium
Test Coverage
yes
Validation Steps
To test, run the example Flutter app in #132936 and verify that the blur does not cut out while scrolling.
Alternatively, run the AiksTest.ClippedBlurFilterRendersCorrectly playground golden and verify that the blur does not dim out as it approaches the top edge of the screen.