Fixed issue when calling coreContext.fetchContacts() again

This commit is contained in:
Sylvain Berfini 2022-05-02 17:45:26 +02:00
parent 4d7ce73422
commit 562185057b
2 changed files with 5 additions and 3 deletions

View file

@ -202,7 +202,7 @@ class ContactLoader : LoaderManager.LoaderCallbacks<Cursor> {
if (core.globalState == GlobalState.Shutdown || core.globalState == GlobalState.Off) { if (core.globalState == GlobalState.Shutdown || core.globalState == GlobalState.Off) {
Log.w("[Contacts Loader] Core is being stopped or already destroyed, abort") Log.w("[Contacts Loader] Core is being stopped or already destroyed, abort")
} else { } else {
Log.i("[Contacts Loader] Friends created") Log.i("[Contacts Loader] ${friends.size} friends created")
val contactId = coreContext.contactsManager.contactIdToWatchFor val contactId = coreContext.contactsManager.contactIdToWatchFor
if (contactId.isNotEmpty()) { if (contactId.isNotEmpty()) {
val friend = friends[contactId] val friend = friends[contactId]
@ -224,10 +224,11 @@ class ContactLoader : LoaderManager.LoaderCallbacks<Cursor> {
for (friend in friendsList) { for (friend in friendsList) {
fl.addLocalFriend(friend) fl.addLocalFriend(friend)
} }
Log.i("[Contacts Loader] Friends added")
fl.updateSubscriptions() fl.updateSubscriptions()
Log.i("[Contacts Loader] Subscription(s) updated")
Log.i("[Contacts Loader] Friends added & subscription updated")
coreContext.contactsManager.fetchFinished() coreContext.contactsManager.fetchFinished()
} }
} }

View file

@ -456,7 +456,8 @@ class CoreContext(val context: Context, coreConfig: Config) : LifecycleOwner, Vi
fun fetchContacts() { fun fetchContacts() {
if (PermissionHelper.required(context).hasReadContactsPermission()) { if (PermissionHelper.required(context).hasReadContactsPermission()) {
Log.i("[Context] Init contacts loader") Log.i("[Context] Init contacts loader")
LoaderManager.getInstance(this@CoreContext).initLoader(0, null, contactLoader) val manager = LoaderManager.getInstance(this@CoreContext)
manager.restartLoader(0, null, contactLoader)
} }
} }