Skip to content

Conversation

@goderbauer
Copy link
Member

@flutter-dashboard flutter-dashboard bot added a: tests "flutter test", flutter_test, or one of our tests framework flutter/packages/flutter repository. See also f: labels. labels Mar 8, 2023
@goderbauer goderbauer requested a review from gspencergoog March 8, 2023 20:48
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
/// [PipelineOwner]s can be organized in a tree to manage multiple render trees,
/// [PipelineOwner]s are organized in a tree to manage multiple render trees,

Aren't they always arranged this way (even a single main view can have subviews).

Copy link
Member Author

@goderbauer goderbauer Mar 9, 2023

Choose a reason for hiding this comment

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

I wanted to express here that the PipelineOwner class can also be used stand-alone. It fully functions if it is not part of a tree, for example for the use case mentioned above where you create another pipeline owner to manage off-screen objects. You are not required to turn them into a tree or attach them to any (existing) tree. Of course, one could argue, that just having a single node (the root) is also a form of tree...

Copy link
Contributor

Choose a reason for hiding this comment

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

Oh, OK, ignore my comment then.

Of course, one could argue, that just having a single node (the root) is also a form of tree...

We don't need to be as pedantic as all that. :-)

Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
bool _debugDoingChildrenLayout = false;
bool _debugDoingChildLayout = false;

...because it just reads better. I'd either say "I'm doing child layout" or "I'm laying out children", but not "I'm doing children layout".

Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
/// which this owner is connected to has [PipelineManifold.enableSemantics]
/// which this owner is connected has [PipelineManifold.enableSemantics]

Copy link
Contributor

Choose a reason for hiding this comment

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

Maybe wrap this line

Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
/// the parent [PipelineOwner] will complete a phase first for the nodes it
/// the parent [PipelineOwner] will complete a phase for the nodes it

Copy link
Contributor

Choose a reason for hiding this comment

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

Why use adopt/drop? They're not really opposites of each other. Why not addChild/removeChild? If you want to use adopt, then the opposite is probably "abandon". Which feels a bit bleak. :-)

Copy link
Member Author

Choose a reason for hiding this comment

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

Copy link
Contributor

Choose a reason for hiding this comment

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

Sigh. Okay, consistency is important, but it's too bad that they aren't opposites.

Copy link
Member Author

Choose a reason for hiding this comment

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

Agreed!

Copy link
Contributor

Choose a reason for hiding this comment

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

I really like that name.

Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
/// by passing it to [PipelineOwner.attach]. Children are attached to the same
/// by passing the manifold to [PipelineOwner.attach]. Children are attached to the same

Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
/// Called be a [PipelineOwner] connected to this [PipelineManifold] when a
/// Called by a [PipelineOwner] connected to this [PipelineManifold] when a

Copy link
Contributor

Choose a reason for hiding this comment

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

maybe link RenderObject?

Suggested change
/// render object associated with that pipeline owner wishes to update its
/// [RenderObject] associated with that pipeline owner wishes to update its

@goderbauer
Copy link
Member Author

All comments are addressed and all failing checks should pass now. PTAL @gspencergoog.

Copy link
Contributor

@gspencergoog gspencergoog left a comment

Choose a reason for hiding this comment

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

32384589-a60f0e74-c078-11e7-9bc1-e5b5287aea9d

@goderbauer goderbauer added the autosubmit Merge PR when tree becomes green via auto submit App label Mar 10, 2023
@auto-submit auto-submit bot merged commit f73c358 into flutter:master Mar 10, 2023
@goderbauer goderbauer deleted the pipelineOwnerTree branch March 10, 2023 19:57
@flar
Copy link
Contributor

flar commented Mar 10, 2023

flar added a commit that referenced this pull request Mar 10, 2023
flar added a commit that referenced this pull request Mar 10, 2023
hannah-hyj pushed a commit to hannah-hyj/flutter that referenced this pull request Mar 11, 2023
hannah-hyj pushed a commit to hannah-hyj/flutter that referenced this pull request Mar 11, 2023
goderbauer added a commit to goderbauer/flutter that referenced this pull request Mar 11, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Mar 11, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request Mar 12, 2023
auto-submit bot pushed a commit that referenced this pull request Mar 13, 2023
Reland "Introduce the PipelineOwner tree (#122231)"
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 10, 2023
engine-flutter-autoroll added a commit to engine-flutter-autoroll/packages that referenced this pull request May 10, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

a: tests "flutter test", flutter_test, or one of our tests autosubmit Merge PR when tree becomes green via auto submit App framework flutter/packages/flutter repository. See also f: labels.

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

3 participants