Potential fix for #733
Fixed an issue in BindableHelpers.onBindingContextChanged and also separated the collection diffing algorithm into 2 kinds: Children/Items.
The diffing algorithm for Items is less aggressive on reuse to avoid unwanted reordering animation, and will only reorder for same instance or same key, otherwise it only tries to reuse on the same index.
The diffing algorithm for Children will try to reuse all elements, even if the indexes are not matching.
Potential fix for #733 Fixed an issue in
BindableHelpers.onBindingContextChanged
and also separated the collection diffing algorithm into 2 kinds: Children/Items.The diffing algorithm for Items is less aggressive on reuse to avoid unwanted reordering animation, and will only reorder for same instance or same key, otherwise it only tries to reuse on the same index.
The diffing algorithm for Children will try to reuse all elements, even if the indexes are not matching.