diff --git a/app/src/main/java/org/thoughtcrime/securesms/conversationlist/ConversationListFragment.java b/app/src/main/java/org/thoughtcrime/securesms/conversationlist/ConversationListFragment.java index c566be3116..3da4186aad 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/conversationlist/ConversationListFragment.java +++ b/app/src/main/java/org/thoughtcrime/securesms/conversationlist/ConversationListFragment.java @@ -320,7 +320,6 @@ public class ConversationListFragment extends MainFragment implements ActionMode super.onStart(); ConversationFragment.prepare(requireContext()); ApplicationDependencies.getAppForegroundObserver().addListener(appForegroundObserver); - viewModel.onStart(); } @Override @@ -336,7 +335,6 @@ public class ConversationListFragment extends MainFragment implements ActionMode public void onStop() { super.onStop(); ApplicationDependencies.getAppForegroundObserver().removeListener(appForegroundObserver); - viewModel.onStop(); } @Override diff --git a/app/src/main/java/org/thoughtcrime/securesms/conversationlist/ConversationListViewModel.java b/app/src/main/java/org/thoughtcrime/securesms/conversationlist/ConversationListViewModel.java index 060f5825ee..d33cf8fe72 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/conversationlist/ConversationListViewModel.java +++ b/app/src/main/java/org/thoughtcrime/securesms/conversationlist/ConversationListViewModel.java @@ -60,7 +60,6 @@ class ConversationListViewModel extends ViewModel { private String activeQuery; private SearchResult activeSearchResult; private int pinnedCount; - private boolean isNewlyCreated; private ConversationListViewModel(@NonNull Application application, @NonNull SearchRepository searchRepository, boolean isArchived) { this.megaphone = new MutableLiveData<>(); @@ -87,7 +86,6 @@ class ConversationListViewModel extends ViewModel { pagedData.getController().onDataInvalidated(); }); }; - this.isNewlyCreated = true; this.hasNoConversations = LiveDataUtil.mapAsync(pagedData.getData(), conversations -> { pinnedCount = DatabaseFactory.getThreadDatabase(application).getPinnedConversationListCount(); @@ -98,6 +96,8 @@ class ConversationListViewModel extends ViewModel { return DatabaseFactory.getThreadDatabase(application).getArchivedConversationListCount() == 0; } }); + + ApplicationDependencies.getDatabaseObserver().registerConversationListObserver(observer); } public LiveData hasNoConversations() { @@ -142,20 +142,6 @@ class ConversationListViewModel extends ViewModel { coldStart = false; } - void onStart() { - if (!isNewlyCreated) { - pagedData.getController().onDataInvalidated(); - } - - isNewlyCreated = false; - - ApplicationDependencies.getDatabaseObserver().registerConversationListObserver(observer); - } - - void onStop() { - ApplicationDependencies.getDatabaseObserver().unregisterObserver(observer); - } - void onMegaphoneCompleted(@NonNull Megaphones.Event event) { megaphone.postValue(null); megaphoneRepository.markFinished(event);