forked from GitHub-Mirror/riotX-android
SAS Tested
This commit is contained in:
@ -75,7 +75,7 @@ class AppModule(private val context: Context) {
|
||||
}
|
||||
|
||||
single {
|
||||
IncomingVerificationRequestHandler(get(), get(), get())
|
||||
IncomingVerificationRequestHandler(context, get())
|
||||
}
|
||||
|
||||
|
||||
|
@ -17,7 +17,7 @@ package im.vector.riotredesign.features.crypto.verification
|
||||
|
||||
import android.content.Context
|
||||
import im.vector.matrix.android.api.Matrix
|
||||
import im.vector.matrix.android.api.auth.data.Credentials
|
||||
import im.vector.matrix.android.api.session.Session
|
||||
import im.vector.matrix.android.api.session.crypto.sas.SasVerificationService
|
||||
import im.vector.matrix.android.api.session.crypto.sas.SasVerificationTransaction
|
||||
import im.vector.matrix.android.api.session.crypto.sas.SasVerificationTxState
|
||||
@ -28,11 +28,10 @@ import im.vector.riotredesign.features.popup.PopupAlertManager
|
||||
* Listens to the VerificationManager and add a new notification when an incoming request is detected.
|
||||
*/
|
||||
class IncomingVerificationRequestHandler(val context: Context,
|
||||
private val credentials: Credentials,
|
||||
verificationService: SasVerificationService) : SasVerificationService.SasVerificationListener {
|
||||
private val session: Session) : SasVerificationService.SasVerificationListener {
|
||||
|
||||
init {
|
||||
verificationService.addListener(this)
|
||||
fun ensureStarted() {
|
||||
session.getSasVerificationService().addListener(this)
|
||||
}
|
||||
|
||||
override fun transactionCreated(tx: SasVerificationTransaction) {}
|
||||
@ -53,7 +52,7 @@ class IncomingVerificationRequestHandler(val context: Context,
|
||||
).apply {
|
||||
contentAction = Runnable {
|
||||
val intent = SASVerificationActivity.incomingIntent(context,
|
||||
credentials.userId,
|
||||
session.sessionParams.credentials.userId,
|
||||
tx.otherUserId,
|
||||
tx.transactionId)
|
||||
weakCurrentActivity?.get()?.startActivity(intent)
|
||||
@ -71,7 +70,7 @@ class IncomingVerificationRequestHandler(val context: Context,
|
||||
context.getString(R.string.action_open),
|
||||
Runnable {
|
||||
val intent = SASVerificationActivity.incomingIntent(context,
|
||||
credentials.userId,
|
||||
session.sessionParams.credentials.userId,
|
||||
tx.otherUserId,
|
||||
tx.transactionId)
|
||||
weakCurrentActivity?.get()?.startActivity(intent)
|
||||
@ -85,11 +84,11 @@ class IncomingVerificationRequestHandler(val context: Context,
|
||||
}
|
||||
SasVerificationTxState.Cancelled,
|
||||
SasVerificationTxState.OnCancelled,
|
||||
SasVerificationTxState.Verified -> {
|
||||
SasVerificationTxState.Verified -> {
|
||||
//cancel related notification
|
||||
PopupAlertManager.cancelAlert("kvr_${tx.transactionId}")
|
||||
}
|
||||
else -> Unit
|
||||
else -> Unit
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -37,6 +37,7 @@ import im.vector.riotredesign.core.extensions.replaceFragment
|
||||
import im.vector.riotredesign.core.platform.OnBackPressed
|
||||
import im.vector.riotredesign.core.platform.ToolbarConfigurable
|
||||
import im.vector.riotredesign.core.platform.VectorBaseActivity
|
||||
import im.vector.riotredesign.features.crypto.verification.IncomingVerificationRequestHandler
|
||||
import im.vector.riotredesign.features.home.room.detail.LoadingRoomDetailFragment
|
||||
import im.vector.riotredesign.features.rageshake.BugReporter
|
||||
import im.vector.riotredesign.features.rageshake.VectorUncaughtExceptionHandler
|
||||
@ -53,6 +54,9 @@ class HomeActivity : VectorBaseActivity(), ToolbarConfigurable {
|
||||
private val homeActivityViewModel: HomeActivityViewModel by viewModel()
|
||||
private val homeNavigator by inject<HomeNavigator>()
|
||||
|
||||
// TODO Move this elsewhere
|
||||
private val incomingVerificationRequestHandler by inject<IncomingVerificationRequestHandler>()
|
||||
|
||||
private var progress: ProgressDialog? = null
|
||||
|
||||
private val drawerListener = object : DrawerLayout.SimpleDrawerListener() {
|
||||
@ -88,6 +92,8 @@ class HomeActivity : VectorBaseActivity(), ToolbarConfigurable {
|
||||
progress?.dismiss()
|
||||
}
|
||||
})
|
||||
|
||||
incomingVerificationRequestHandler.ensureStarted()
|
||||
}
|
||||
|
||||
override fun onDestroy() {
|
||||
@ -124,7 +130,7 @@ class HomeActivity : VectorBaseActivity(), ToolbarConfigurable {
|
||||
|
||||
override fun onOptionsItemSelected(item: MenuItem): Boolean {
|
||||
when (item.itemId) {
|
||||
android.R.id.home -> {
|
||||
android.R.id.home -> {
|
||||
drawerLayout.openDrawer(GravityCompat.START)
|
||||
return true
|
||||
}
|
||||
@ -137,7 +143,7 @@ class HomeActivity : VectorBaseActivity(), ToolbarConfigurable {
|
||||
return true
|
||||
}
|
||||
// TODO Temporary code here to create a room
|
||||
R.id.tmp_menu_create_room -> {
|
||||
R.id.tmp_menu_create_room -> {
|
||||
homeActivityViewModel.createRoom()
|
||||
return true
|
||||
}
|
||||
|
@ -86,8 +86,6 @@ class SignOutViewModel : ViewModel(), KeysBackupService.KeysBackupStateListener
|
||||
* The backup check on logout flow has to be displayed if there are keys in the store, and the keys backup state is not Ready
|
||||
*/
|
||||
fun doYouNeedToBeDisplayed(session: Session?): Boolean {
|
||||
return false
|
||||
|
||||
return session
|
||||
?.inboundGroupSessionsCount(false)
|
||||
?: 0 > 0
|
||||
|
Reference in New Issue
Block a user