From 68d077e8f08319f7f995236c41d130730b417b79 Mon Sep 17 00:00:00 2001
From: Taras Smakula <tarassmakula@gmail.com>
Date: Thu, 29 Feb 2024 16:03:14 +0200
Subject: [PATCH] Do not allow to enter without backup

---
 .../futo/circles/auth/feature/uia/UIADialogFragment.kt |  2 +-
 .../org/futo/circles/auth/feature/uia/UIAViewModel.kt  | 10 ++++++++++
 2 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/auth/src/main/java/org/futo/circles/auth/feature/uia/UIADialogFragment.kt b/auth/src/main/java/org/futo/circles/auth/feature/uia/UIADialogFragment.kt
index 649b6f6ed..046a9860c 100644
--- a/auth/src/main/java/org/futo/circles/auth/feature/uia/UIADialogFragment.kt
+++ b/auth/src/main/java/org/futo/circles/auth/feature/uia/UIADialogFragment.kt
@@ -170,7 +170,7 @@ class UIADialogFragment :
                 }
 
                 override fun onDoNotRestore() {
-                    enterPassPhraseDialog?.dismiss()
+                    viewModel.cancelRestore()
                 }
 
                 override fun onSelectFileClicked() {
diff --git a/auth/src/main/java/org/futo/circles/auth/feature/uia/UIAViewModel.kt b/auth/src/main/java/org/futo/circles/auth/feature/uia/UIAViewModel.kt
index ffa302e88..e07d2ab37 100644
--- a/auth/src/main/java/org/futo/circles/auth/feature/uia/UIAViewModel.kt
+++ b/auth/src/main/java/org/futo/circles/auth/feature/uia/UIAViewModel.kt
@@ -21,6 +21,7 @@ import org.futo.circles.core.model.LoadingData
 import org.futo.circles.core.provider.MatrixInstanceProvider
 import org.futo.circles.core.provider.MatrixSessionProvider
 import org.futo.circles.core.provider.PreferencesProvider
+import org.matrix.android.sdk.api.auth.data.sessionId
 import org.matrix.android.sdk.api.session.Session
 import javax.inject.Inject
 
@@ -146,4 +147,13 @@ class UIAViewModel @Inject constructor(
         }
     }
 
+    fun cancelRestore() {
+        launchBg {
+            val session = MatrixSessionProvider.currentSession ?: return@launchBg
+            val sessionId = session.sessionParams.credentials.sessionId()
+            refreshTokenManager.cancelTokenRefreshing(session)
+            MatrixInstanceProvider.matrix.authenticationService().removeSession(sessionId)
+        }
+    }
+
 }
\ No newline at end of file
-- 
GitLab