mirror of
https://github.com/oxen-io/session-android.git
synced 2025-02-21 11:18:26 +00:00
commit
81148e3f93
@ -145,7 +145,7 @@ class LinkedDevicesActivity : PassphraseRequiredActionBarActivity, LoaderManager
|
|||||||
}
|
}
|
||||||
|
|
||||||
override fun onDeviceLinkRequestAuthorized(deviceLink: DeviceLink) {
|
override fun onDeviceLinkRequestAuthorized(deviceLink: DeviceLink) {
|
||||||
LokiFileServerAPI.shared.addDeviceLink(deviceLink).bind(LokiAPI.sharedWorkContext) {
|
LokiFileServerAPI.shared.addDeviceLink(deviceLink).bind(LokiAPI.sharedContext) {
|
||||||
signAndSendDeviceLinkMessage(this, deviceLink)
|
signAndSendDeviceLinkMessage(this, deviceLink)
|
||||||
}.successUi {
|
}.successUi {
|
||||||
LoaderManager.getInstance(this).restartLoader(0, null, this)
|
LoaderManager.getInstance(this).restartLoader(0, null, this)
|
||||||
|
@ -217,11 +217,16 @@ class LokiPublicChatPoller(private val context: Context, private val group: Loki
|
|||||||
val userPrivateKey = IdentityKeyUtil.getIdentityKeyPair(context).privateKey.serialize()
|
val userPrivateKey = IdentityKeyUtil.getIdentityKeyPair(context).privateKey.serialize()
|
||||||
val database = DatabaseFactory.getLokiAPIDatabase(context)
|
val database = DatabaseFactory.getLokiAPIDatabase(context)
|
||||||
LokiFileServerAPI.configure(false, userHexEncodedPublicKey, userPrivateKey, database)
|
LokiFileServerAPI.configure(false, userHexEncodedPublicKey, userPrivateKey, database)
|
||||||
LokiDeviceLinkUtilities.getAllLinkedDeviceHexEncodedPublicKeys(userHexEncodedPublicKey).bind { devices ->
|
LokiDeviceLinkUtilities.getAllLinkedDeviceHexEncodedPublicKeys(userHexEncodedPublicKey).bind(LokiPublicChatAPI.sharedContext) { devices ->
|
||||||
userDevices = devices
|
userDevices = devices
|
||||||
api.getMessages(group.channel, group.server)
|
api.getMessages(group.channel, group.server)
|
||||||
}.bind { messages ->
|
}.bind(LokiPublicChatAPI.sharedContext) { messages ->
|
||||||
if (messages.isNotEmpty()) {
|
if (messages.isNotEmpty()) {
|
||||||
|
if (messages.count() == 1) {
|
||||||
|
Log.d("Loki", "Fetched 1 new message.")
|
||||||
|
} else {
|
||||||
|
Log.d("Loki", "Fetched ${messages.count()} new messages.")
|
||||||
|
}
|
||||||
// We need to fetch the device mapping for any devices we don't have
|
// We need to fetch the device mapping for any devices we don't have
|
||||||
uniqueDevices = messages.map { it.hexEncodedPublicKey }.toSet()
|
uniqueDevices = messages.map { it.hexEncodedPublicKey }.toSet()
|
||||||
val devicesToUpdate = uniqueDevices.filter { !userDevices.contains(it) && LokiFileServerAPI.shared.hasDeviceLinkCacheExpired(hexEncodedPublicKey = it) }
|
val devicesToUpdate = uniqueDevices.filter { !userDevices.contains(it) && LokiFileServerAPI.shared.hasDeviceLinkCacheExpired(hexEncodedPublicKey = it) }
|
||||||
|
Loading…
x
Reference in New Issue
Block a user