Hello everyone (UI peeps in particular),
I've pushed (not yet merged) a patch that would enable us to keep items
in tabs (main/sub) sorted at all times by setting a comparator in
If a comparator isn't set, then everything should behave as before. If a
comparator is set, then from that moment on the tab items will be kept
in a SortedSet, so that even if an item is added in a way that doesn't
trigger an event (e.g. getItems().add()) the items will be kept sorted
according to the given comparator. If the comparator is set to null,
from that moment on the tab should revert to its old behaviour.
You're most welcome to have a look and let me know if this might break
something (remember though that it's not obligatory to set a comparator,
so only possible breakage should be in generic flows).
Feel free to use it once it's merged; along with SortedListModel, this
should make sorting less painful. Just keep in mind that once you set a
comparator, you can't cast getItems() to a List. This shouldn't be a
problem in general, as mostly it's as useful (and probably more correct)
to cast to a Collection.