From 7fc7d599effcbda1f294b70780b8ab1a995da540 Mon Sep 17 00:00:00 2001 From: Gavriil Sitnikov Date: Wed, 20 Jul 2016 15:14:05 +0300 Subject: [PATCH] observe changes a bit reworked --- .../core/observables/collections/ObservableCollection.java | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/main/java/ru/touchin/roboswag/core/observables/collections/ObservableCollection.java b/src/main/java/ru/touchin/roboswag/core/observables/collections/ObservableCollection.java index 739f2f4..36f2dd1 100644 --- a/src/main/java/ru/touchin/roboswag/core/observables/collections/ObservableCollection.java +++ b/src/main/java/ru/touchin/roboswag/core/observables/collections/ObservableCollection.java @@ -65,11 +65,10 @@ public abstract class ObservableCollection implements Serializable { @NonNull private Observable> createItemsObservable() { return Observable - .>create(subscriber -> { - subscriber.onNext(getItems()); + .>switchOnNext(Observable.create(subscriber -> { + subscriber.onNext(observeChanges().map(changes -> getItems()).startWith(getItems())); subscriber.onCompleted(); - }) - .switchMap(initialItems -> observeChanges().map(changes -> getItems()).startWith(initialItems)) + })) .replay(1) .refCount(); }