Are there any parts that need more testing?
Since these changes are somewhat stale, it would be worth manually confirming during runtime with various scenarios and attempts to create any undesired behavior or overlooked race conditions.
How can other people (reviewers) test your changes?
[ ] Confirm behavior improves expectations or matches existing ones on the main branch
[ ] Adding UI Nodes
[ ] Removing UI Nodes
[ ] Despawn
[ ] Despawn Recursive
[ ] Swap Parents
[ ] Changing other hierarchies and order of nodes
[ ] Changing various style attributes (width, height, z index, and position type), resizing windows, and translating UI nodes
supersedes https://github.com/bevyengine/bevy/pull/12804
Objective
UiSurface
mappings to be more conciseUiSurface
Solution
EntityHashSet
to track relationships between camera -> root nodesOption<Entity>
inRootNodeData
(previously namedRootNodePair
)Testing