From 98f1c6d87fff8cc398136ce41eb4b83395c4262e Mon Sep 17 00:00:00 2001 From: valere Date: Tue, 31 Jan 2023 14:57:16 +0100 Subject: [PATCH] Fix unverified popup for own device See issue on rust sdk for not having own device has locally trusted --- .../home/UnknownDeviceDetectorSharedViewModel.kt | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/vector/src/main/java/im/vector/app/features/home/UnknownDeviceDetectorSharedViewModel.kt b/vector/src/main/java/im/vector/app/features/home/UnknownDeviceDetectorSharedViewModel.kt index e859691067..2d8bedb951 100644 --- a/vector/src/main/java/im/vector/app/features/home/UnknownDeviceDetectorSharedViewModel.kt +++ b/vector/src/main/java/im/vector/app/features/home/UnknownDeviceDetectorSharedViewModel.kt @@ -102,12 +102,17 @@ class UnknownDeviceDetectorSharedViewModel @AssistedInject constructor( session.flow().liveMyDevicesInfo(), session.flow().liveCrossSigningPrivateKeys(), ) { cryptoList, infoList, pInfo -> - // Timber.v("## Detector trigger ${cryptoList.map { "${it.deviceId} ${it.trustLevel}" }}") -// Timber.v("## Detector trigger canCrossSign ${pInfo.get().selfSigned != null}") + Timber.v("## Detector trigger ${cryptoList.map { "${it.deviceId} ${it.trustLevel}" }}") + Timber.v("## Detector trigger canCrossSign ${pInfo.get().selfSigned != null}") deleteUnusedClientInformation(infoList) infoList + .asSequence() + .filter { + // filter out own device + session.sessionParams.deviceId != it.deviceId + } .filter { info -> // filter out verified sessions or those which do not support encryption (i.e. without crypto info) cryptoList.firstOrNull { info.deviceId == it.deviceId }?.isVerified?.not().orFalse() @@ -125,10 +130,11 @@ class UnknownDeviceDetectorSharedViewModel @AssistedInject constructor( pInfo.getOrNull()?.selfSigned != null // adding this to pass distinct when cross sign change ) } + .toList() } .distinctUntilChanged() .execute { async -> - // Timber.v("## Detector trigger passed distinct") + Timber.v("## Detector trigger passed distinct") copy( myMatrixItem = session.getUserOrDefault(session.myUserId).toMatrixItem(), unknownSessions = async