mirror of
https://github.com/facebook/react-native.git
synced 2025-11-01 09:14:26 +00:00
Summary: If a ShadowNode is being animated from opacity 0 to 1, and that animation is interrupted by another update to the same ShadowNode, we stop the animation and send the original "final" ShadowView to the mounting layer. On iOS, this is enough to make the Mounting layer consistent with the Shadow layer. However, on Android, since only prop deltas are passed to the mounting layer and not the entire props bag, this will NOT be enough because the opacity will not be updated in that final step. Therefore, in those cases where we've detected a conflict and we're cleaning up after an interrupted animation, we must send two updates to the mounting layer: one to force the opacity to 1, and another to make the ShadowTree consistent with the Mounting layer. Changelog: [Internal] Reviewed By: sammy-SC Differential Revision: D25324942 fbshipit-source-id: 5d9666128feaae87d7530c394ef05db580aa5a75