fix merge issue with nested layouts #340
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Checklist
I documented the TypeScript code using JSDoc style(NA).I translated all the newly inserted strings into German and English(NA)Motivation and Context
There was an issue with merging two states wherein layout information for nested elements wouldn't be recalculated properly.
Description
While merging two states, elements that used to have a parent in the old state but are without a parent in the new state wouldn't be calculated properly. This is used by the client for quickly accessing the root elements for rendering, and while it triggers on its own as a result of re-renders and layout updates, it sometimes caused elements to vanish momentarily after state merges (e.g. during realtime collaboration).
Steps for Testing
Test Coverage
Screenshots
Without this fix:
With this fix: