fix: contact status not reflected in list
This commit is contained in:
parent
992bd01f83
commit
8a9a23a89e
|
@ -65,6 +65,10 @@ proc init*(self: Controller) =
|
|||
var args = ContactArgs(e)
|
||||
self.delegate.contactUpdated(args.contactId)
|
||||
|
||||
self.events.on(SIGNAL_CONTACTS_STATUS_UPDATED) do(e: Args):
|
||||
let args = ContactsStatusUpdatedArgs(e)
|
||||
self.delegate.contactsStatusUpdated(args.statusUpdates)
|
||||
|
||||
self.events.on(SIGNAL_CONTACT_VERIFICATION_DECLINED) do(e: Args):
|
||||
var args = ContactArgs(e)
|
||||
self.delegate.onVerificationRequestDeclined(args.contactId)
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
import NimQml
|
||||
import ../../../../../app_service/service/contacts/dto/contacts as contacts
|
||||
import ../../../../../app_service/service/contacts/dto/status_update
|
||||
|
||||
type
|
||||
AccessInterface* {.pure inheritable.} = ref object of RootObj
|
||||
|
@ -76,6 +77,9 @@ method contactTrustStatusChanged*(self: AccessInterface, publicKey: string, isUn
|
|||
method contactUpdated*(self: AccessInterface, publicKey: string) {.base.} =
|
||||
raise newException(ValueError, "No implementation available")
|
||||
|
||||
method contactsStatusUpdated*(self: AccessInterface, statusUpdates: seq[StatusUpdateDto]) {.base.} =
|
||||
raise newException(ValueError, "No implementation available")
|
||||
|
||||
method markUntrustworthy*(self: AccessInterface, publicKey: string): void {.base.} =
|
||||
raise newException(ValueError, "No implementation available")
|
||||
|
||||
|
|
|
@ -177,6 +177,11 @@ method contactRequestRejectionRemoved*(self: Module, publicKey: string) =
|
|||
method contactUpdated*(self: Module, publicKey: string) =
|
||||
self.removeIfExistsAndAddToAppropriateModel(publicKey)
|
||||
|
||||
method contactsStatusUpdated*(self: Module, statusUpdates: seq[StatusUpdateDto]) =
|
||||
for s in statusUpdates:
|
||||
let status = toOnlineStatus(s.statusType)
|
||||
self.view.myMutualContactsModel().setOnlineStatus(s.publicKey, status)
|
||||
|
||||
method contactNicknameChanged*(self: Module, publicKey: string) =
|
||||
let (name, _, _) = self.controller.getContactNameAndImage(publicKey)
|
||||
self.view.myMutualContactsModel().updateName(publicKey, name)
|
||||
|
|
Loading…
Reference in New Issue