fix(contacts): only open 1x1 chat when mutual contact when sending req
Fixes #6291
This commit is contained in:
parent
5a1f0a3d3a
commit
deca07c0c6
|
@ -90,7 +90,7 @@ proc init*(self: Controller) =
|
||||||
|
|
||||||
self.events.on(SIGNAL_CONTACT_ADDED) do(e: Args):
|
self.events.on(SIGNAL_CONTACT_ADDED) do(e: Args):
|
||||||
var args = ContactArgs(e)
|
var args = ContactArgs(e)
|
||||||
self.delegate.onContactAccepted(args.contactId)
|
self.delegate.onContactAdded(args.contactId)
|
||||||
|
|
||||||
self.events.on(SIGNAL_CONTACT_REMOVED) do(e: Args):
|
self.events.on(SIGNAL_CONTACT_REMOVED) do(e: Args):
|
||||||
var args = ContactArgs(e)
|
var args = ContactArgs(e)
|
||||||
|
@ -281,6 +281,9 @@ proc getCurrentFleet*(self: Controller): string =
|
||||||
proc getContacts*(self: Controller, group: ContactsGroup): seq[ContactsDto] =
|
proc getContacts*(self: Controller, group: ContactsGroup): seq[ContactsDto] =
|
||||||
return self.contactService.getContactsByGroup(group)
|
return self.contactService.getContactsByGroup(group)
|
||||||
|
|
||||||
|
proc getContactById*(self: Controller, id: string): ContactsDto =
|
||||||
|
return self.contactService.getContactById(id)
|
||||||
|
|
||||||
proc getContactDetails*(self: Controller, id: string): ContactDetails =
|
proc getContactDetails*(self: Controller, id: string): ContactDetails =
|
||||||
return self.contactService.getContactDetails(id)
|
return self.contactService.getContactDetails(id)
|
||||||
|
|
||||||
|
|
|
@ -94,7 +94,7 @@ method onChatUnmuted*(self: AccessInterface, chatId: string) {.base.} =
|
||||||
method onMarkAllMessagesRead*(self: AccessInterface, chatId: string) {.base.} =
|
method onMarkAllMessagesRead*(self: AccessInterface, chatId: string) {.base.} =
|
||||||
raise newException(ValueError, "No implementation available")
|
raise newException(ValueError, "No implementation available")
|
||||||
|
|
||||||
method onContactAccepted*(self: AccessInterface, publicKey: string) {.base.} =
|
method onContactAdded*(self: AccessInterface, publicKey: string) {.base.} =
|
||||||
raise newException(ValueError, "No implementation available")
|
raise newException(ValueError, "No implementation available")
|
||||||
|
|
||||||
method onContactRejected*(self: AccessInterface, publicKey: string) {.base.} =
|
method onContactRejected*(self: AccessInterface, publicKey: string) {.base.} =
|
||||||
|
|
|
@ -597,9 +597,13 @@ method getCurrentFleet*(self: Module): string =
|
||||||
method acceptContactRequest*(self: Module, publicKey: string) =
|
method acceptContactRequest*(self: Module, publicKey: string) =
|
||||||
self.controller.acceptContactRequest(publicKey)
|
self.controller.acceptContactRequest(publicKey)
|
||||||
|
|
||||||
method onContactAccepted*(self: Module, publicKey: string) =
|
method onContactAdded*(self: Module, publicKey: string) =
|
||||||
self.view.contactRequestsModel().removeItemById(publicKey)
|
self.view.contactRequestsModel().removeItemById(publicKey)
|
||||||
self.switchToOrCreateOneToOneChat(publicKey)
|
|
||||||
|
let contact = self.controller.getContactById(publicKey)
|
||||||
|
if (contact.isMutualContact):
|
||||||
|
self.switchToOrCreateOneToOneChat(publicKey)
|
||||||
|
|
||||||
self.updateParentBadgeNotifications()
|
self.updateParentBadgeNotifications()
|
||||||
|
|
||||||
method acceptAllContactRequests*(self: Module) =
|
method acceptAllContactRequests*(self: Module) =
|
||||||
|
|
Loading…
Reference in New Issue