diff --git a/briar-android/src/main/java/org/briarproject/briar/android/contact/ContactListFragment.java b/briar-android/src/main/java/org/briarproject/briar/android/contact/ContactListFragment.java index 7b5f1b523..a4d5116b3 100644 --- a/briar-android/src/main/java/org/briarproject/briar/android/contact/ContactListFragment.java +++ b/briar-android/src/main/java/org/briarproject/briar/android/contact/ContactListFragment.java @@ -267,7 +267,7 @@ public class ContactListFragment extends BaseFragment implements EventListener, if (revision == adapter.getRevision()) { adapter.incrementRevision(); if (contacts.isEmpty()) list.showData(); - else adapter.addAll(contacts); + else adapter.replaceAll(contacts); } else { LOG.info("Concurrent update, reloading"); loadContacts(); diff --git a/briar-android/src/main/java/org/briarproject/briar/android/forum/ForumListFragment.java b/briar-android/src/main/java/org/briarproject/briar/android/forum/ForumListFragment.java index b5d86fde1..9b02d4151 100644 --- a/briar-android/src/main/java/org/briarproject/briar/android/forum/ForumListFragment.java +++ b/briar-android/src/main/java/org/briarproject/briar/android/forum/ForumListFragment.java @@ -182,7 +182,7 @@ public class ForumListFragment extends BaseEventFragment implements if (revision == adapter.getRevision()) { adapter.incrementRevision(); if (forums.isEmpty()) list.showData(); - else adapter.addAll(forums); + else adapter.replaceAll(forums); } else { LOG.info("Concurrent update, reloading"); loadForums(); diff --git a/briar-android/src/main/java/org/briarproject/briar/android/privategroup/list/GroupListFragment.java b/briar-android/src/main/java/org/briarproject/briar/android/privategroup/list/GroupListFragment.java index f6a1f3a0f..83f9e44e6 100644 --- a/briar-android/src/main/java/org/briarproject/briar/android/privategroup/list/GroupListFragment.java +++ b/briar-android/src/main/java/org/briarproject/briar/android/privategroup/list/GroupListFragment.java @@ -194,7 +194,7 @@ public class GroupListFragment extends BaseFragment implements if (revision == adapter.getRevision()) { adapter.incrementRevision(); if (groups.isEmpty()) list.showData(); - else adapter.addAll(groups); + else adapter.replaceAll(groups); } else { LOG.info("Concurrent update, reloading"); loadGroups(); diff --git a/briar-android/src/main/java/org/briarproject/briar/android/util/BriarAdapter.java b/briar-android/src/main/java/org/briarproject/briar/android/util/BriarAdapter.java index 889fd57f5..eb8276e19 100644 --- a/briar-android/src/main/java/org/briarproject/briar/android/util/BriarAdapter.java +++ b/briar-android/src/main/java/org/briarproject/briar/android/util/BriarAdapter.java @@ -79,6 +79,10 @@ public abstract class BriarAdapter this.items.addAll(items); } + public void replaceAll(Collection items) { + this.items.replaceAll(items); + } + public void setItems(Collection items) { this.items.beginBatchedUpdates(); this.items.clear();