Ensure the Transition stops once DOM Nodes are hidden #1500
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.
This PR will fix an issue where the
onStop
callback internally is never called if the DOM nodebecomes hidden.
This happens when you use the
Transition
component in combination with theDialog
component.When the
Dialog
becomes "hidden", then we unmount everything, however transitions don't seem torun, end or cancel on hidden DOM nodes. This causes an issue where "hidden" DOM nodes had a pending
transition.
This pending transition prevented
<Transition.Child>
and<Transition>
components higher up thetree from unmounting. This in turn resulted in the
Dialog
not completely unmounting properly.Fixes: #1417
Fixes: tailwindlabs/tailwindui-issues#1215