Skip to content
This repository has been archived by the owner on Feb 25, 2025. It is now read-only.

Fix premature LayerStateStack layer culling #38159

Merged
merged 2 commits into from
Dec 9, 2022

Conversation

flar
Copy link
Contributor

@flar flar commented Dec 9, 2022

The LayerStateStack introduced some aggressive clip and opacity culling to the Paint methods of some layers. Unfortunately, PlatformViews require that their Paint method is called if their Preroll method is called. Since we Preroll all layers regardless of culling, then we must Paint all PlatformViewLayers regardless of culling. The culling introduced by the LayerStateStack did not check if there was a PlatformView in the subtree before returning early, so this PR eliminates those optimizations.

@flar flar requested review from jonahwilliams and dnfield December 9, 2022 19:50
Copy link
Member

@jonahwilliams jonahwilliams left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@flar flar added the autosubmit Merge PR when tree becomes green via auto submit App label Dec 9, 2022
@auto-submit auto-submit bot merged commit a259613 into flutter:main Dec 9, 2022
flar added a commit to flar/engine that referenced this pull request Dec 9, 2022
* remove premature opacity culling

* remove premature clip culling
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Dec 9, 2022
auto-submit bot pushed a commit to flutter/flutter that referenced this pull request Dec 9, 2022
…116811)

* 2121d8187 [web] Use js_util.promiseToFuture with CanvasKitInit() (flutter/engine#38128)

* a259613ab Fix premature LayerStateStack layer culling (flutter/engine#38159)
loic-sharma pushed a commit to loic-sharma/flutter-engine that referenced this pull request Dec 16, 2022
* remove premature opacity culling

* remove premature clip culling
itsjustkevin pushed a commit that referenced this pull request Dec 16, 2022
* Fix premature LayerStateStack layer culling (#38159)

* remove premature opacity culling

* remove premature clip culling

* empty
loic-sharma pushed a commit to loic-sharma/flutter-engine that referenced this pull request Jan 3, 2023
* remove premature opacity culling

* remove premature clip culling
gspencergoog pushed a commit to gspencergoog/flutter that referenced this pull request Jan 19, 2023
…lutter#116811)

* 2121d8187 [web] Use js_util.promiseToFuture with CanvasKitInit() (flutter/engine#38128)

* a259613ab Fix premature LayerStateStack layer culling (flutter/engine#38159)
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
autosubmit Merge PR when tree becomes green via auto submit App
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants