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

Make flow layers' attributes immutable #9176

Merged
merged 3 commits into from
Jun 10, 2019

Conversation

liyuqian
Copy link
Contributor

@liyuqian liyuqian commented Jun 3, 2019

For flutter/flutter#33807

We still need to make layers' children immutable for full immutability.
That will require us to change the SceneBuilder API to build the layer
bottom up instead of top down (post-order traversal instead of pre-order
traversal).

@liyuqian liyuqian requested a review from yjbanov June 3, 2019 23:11
@liyuqian liyuqian force-pushed the immutable_layer branch 2 times, most recently from 7858a50 to 704de74 Compare June 7, 2019 17:16
liyuqian added 2 commits June 7, 2019 14:00
Related issue: flutter/flutter#33807

We still need to make layers' children immutable for full immutability.
That will require us to change the SceneBuilder API to build the layer
bottom up instead of top down (post-order traversal instead of pre-order
traversal).
@liyuqian liyuqian requested review from chinmaygarde and cbracken June 7, 2019 22:42
Copy link
Contributor

@yjbanov yjbanov left a comment

Choose a reason for hiding this comment

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

LGTM if LGT @chinmaygarde

ClipPathLayer::ClipPathLayer(Clip clip_behavior)
: clip_behavior_(clip_behavior) {
ClipPathLayer::ClipPathLayer(const SkPath& clip_path, Clip clip_behavior)
: clip_path_(clip_path), clip_behavior_(clip_behavior) {
Copy link
Contributor

Choose a reason for hiding this comment

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

Does this deeply copy the path? Is that fast enough?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I think SkPath is copy on write. In any case, this is no slower than our old setPath.

@liyuqian liyuqian merged commit b622d43 into flutter:master Jun 10, 2019
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Jun 10, 2019
engine-flutter-autoroll added a commit to flutter/flutter that referenced this pull request Jun 10, 2019
flutter/engine@36b7123...f3ab2e4

git log 36b7123..f3ab2e4 --no-merges --oneline
f3ab2e4 Roll src/third_party/skia 5ec1b8ff3f45..cb1adb40d0f3 (10 commits) (flutter/engine#9258)
b622d43 Make flow layers' attributes immutable (flutter/engine#9176)
259d334 Reland "Keyboard support for embedded Android views. (#9203) (flutter/engine#9257)

The AutoRoll server is located here: https://autoroll.skia.org/r/flutter-engine-flutter-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff (bmparr@google.com), and stop
the roller if necessary.
@liyuqian liyuqian deleted the immutable_layer branch June 10, 2019 22:15
huqiuser pushed a commit to huqiuser/engine that referenced this pull request Jun 12, 2019
For flutter/flutter#33807

We still need to make layers' children immutable for full immutability.
That will require us to change the SceneBuilder API to build the layer
bottom up instead of top down (post-order traversal instead of pre-order
traversal).
kiku-jw pushed a commit to kiku-jw/flutter that referenced this pull request Jun 14, 2019
flutter/engine@36b7123...f3ab2e4

git log 36b7123..f3ab2e4 --no-merges --oneline
f3ab2e4 Roll src/third_party/skia 5ec1b8ff3f45..cb1adb40d0f3 (10 commits) (flutter/engine#9258)
b622d43 Make flow layers&flutter#39; attributes immutable (flutter/engine#9176)
259d334 Reland &flutter#34;Keyboard support for embedded Android views. (flutter#9203) (flutter/engine#9257)

The AutoRoll server is located here: https://autoroll.skia.org/r/flutter-engine-flutter-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff (bmparr@google.com), and stop
the roller if necessary.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants