Clone
Mihai Chira
committed
on 17 May 17
FLEX-35306 Reverting the fix for FLEX-19651 because it introduced the FLEX-35306 regression.
CAUSE: Due to the fix for FLEX-19651, when the … Show more
FLEX-35306 Reverting the fix for FLEX-19651 because it introduced the FLEX-35306 regression.

CAUSE: Due to the fix for FLEX-19651, when the data provider is reset on a (DropDown)List right after the selected item (from this new data provider) is set, a validation cycle is forced on the list immediately before the new data provider is assigned to it. As a consequence, ListBase.commitProperties() fails when trying to find the selected item in the data provider (because, for now, it's still the old one, which doesn't have the new item), thus clearing the selection. But if the list had requireSelection set to true, then the first item in the old provider will be selected nonetheless. And if there was a two-way binding between the list and the model, then the model will at this point be rewritten, most probably wrongly.

SOLUTION: we're reverting the fix for FLEX-19651, which was a minor bug, and seeing if any mustella or unit tests fail. If so, we'll find other ways to fix FLEX-19651.

NOTES: FLEX-19651 doesn't have enough data to reproduce it, so I can't know for sure if it's still there or not. But after playing a bit with multiple selection and data provider changes, as the ticket suggests, there doesn't appear to be any major difference.

Show less