Updating by payload fixed (#105)

This commit is contained in:
Arseniy Borisov 2017-11-13 11:58:17 +03:00 committed by Gavriil Sitnikov
parent 352ff5a8b4
commit 426a213a44
1 changed files with 6 additions and 2 deletions

View File

@ -31,10 +31,9 @@ import java.util.Collections;
import java.util.LinkedList;
import java.util.List;
import io.reactivex.Observable;
import io.reactivex.functions.BiConsumer;
import io.reactivex.functions.Consumer;
import io.reactivex.Observable;
import io.reactivex.subjects.BehaviorSubject;
import ru.touchin.roboswag.components.utils.LifecycleBindable;
import ru.touchin.roboswag.components.utils.UiUtils;
@ -104,6 +103,11 @@ public abstract class ObservableCollectionAdapter<TItem, TItemViewHolder extends
lifecycleBindable.untilDestroy(observableCollectionSubject
.switchMap(optional -> {
final ObservableCollection<TItem> collection = optional.get();
if (collection instanceof ObservableList) {
innerCollection.setDiffUtilsSource((ObservableList<TItem>) collection);
} else {
innerCollection.setDiffUtilsSource(null);
}
return collection != null ? collection.observeItems() : Observable.just(Collections.emptyList());
}), innerCollection::set);
lifecycleBindable.untilDestroy(createMoreAutoLoadingObservable());