From 0c436451b928fefaaffc0af198cdfac708a765da Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Tue, 9 Sep 2025 14:46:07 +0200 Subject: [PATCH 1/2] Remove unused onLogoutForNativeSlidingSyncMigrationNeeded() method and cleanup dead code. --- .../android/appnav/LoggedInFlowNode.kt | 20 ------------------- .../features/home/api/HomeEntryPoint.kt | 1 - 2 files changed, 21 deletions(-) diff --git a/appnav/src/main/kotlin/io/element/android/appnav/LoggedInFlowNode.kt b/appnav/src/main/kotlin/io/element/android/appnav/LoggedInFlowNode.kt index 2d08d5f6f5..82f9dcb9b6 100644 --- a/appnav/src/main/kotlin/io/element/android/appnav/LoggedInFlowNode.kt +++ b/appnav/src/main/kotlin/io/element/android/appnav/LoggedInFlowNode.kt @@ -52,7 +52,6 @@ import io.element.android.features.ftue.api.FtueEntryPoint import io.element.android.features.ftue.api.state.FtueService import io.element.android.features.ftue.api.state.FtueState import io.element.android.features.home.api.HomeEntryPoint -import io.element.android.features.logout.api.LogoutEntryPoint import io.element.android.features.networkmonitor.api.NetworkMonitor import io.element.android.features.networkmonitor.api.NetworkStatus import io.element.android.features.preferences.api.PreferencesEntryPoint @@ -118,7 +117,6 @@ class LoggedInFlowNode( private val shareEntryPoint: ShareEntryPoint, private val matrixClient: MatrixClient, private val sendingQueue: SendQueues, - private val logoutEntryPoint: LogoutEntryPoint, private val incomingVerificationEntryPoint: IncomingVerificationEntryPoint, private val mediaPreviewConfigMigration: MediaPreviewConfigMigration, private val sessionEnterpriseService: SessionEnterpriseService, @@ -276,9 +274,6 @@ class LoggedInFlowNode( @Parcelize data class IncomingShare(val intent: Intent) : NavTarget - @Parcelize - data object LogoutForNativeSlidingSyncMigrationNeeded : NavTarget - @Parcelize data class IncomingVerificationRequest(val data: VerificationRequest.Incoming) : NavTarget } @@ -323,10 +318,6 @@ class LoggedInFlowNode( override fun onReportBugClick() { plugins().forEach { it.onOpenBugReport() } } - - override fun onLogoutForNativeSlidingSyncMigrationNeeded() { - backstack.push(NavTarget.LogoutForNativeSlidingSyncMigrationNeeded) - } } homeEntryPoint .nodeBuilder(this, buildContext) @@ -480,17 +471,6 @@ class LoggedInFlowNode( .params(ShareEntryPoint.Params(intent = navTarget.intent)) .build() } - is NavTarget.LogoutForNativeSlidingSyncMigrationNeeded -> { - val callback = object : LogoutEntryPoint.Callback { - override fun onChangeRecoveryKeyClick() { - backstack.push(NavTarget.SecureBackup()) - } - } - - logoutEntryPoint.nodeBuilder(this, buildContext) - .callback(callback) - .build() - } is NavTarget.IncomingVerificationRequest -> { incomingVerificationEntryPoint.nodeBuilder(this, buildContext) .params(IncomingVerificationEntryPoint.Params(navTarget.data)) diff --git a/features/home/api/src/main/kotlin/io/element/android/features/home/api/HomeEntryPoint.kt b/features/home/api/src/main/kotlin/io/element/android/features/home/api/HomeEntryPoint.kt index 88b55d4e02..9beb147568 100644 --- a/features/home/api/src/main/kotlin/io/element/android/features/home/api/HomeEntryPoint.kt +++ b/features/home/api/src/main/kotlin/io/element/android/features/home/api/HomeEntryPoint.kt @@ -28,6 +28,5 @@ interface HomeEntryPoint : FeatureEntryPoint { fun onSessionConfirmRecoveryKeyClick() fun onRoomSettingsClick(roomId: RoomId) fun onReportBugClick() - fun onLogoutForNativeSlidingSyncMigrationNeeded() } } From a570b0d4ff8b3bf26f301658036415d628e04611 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Tue, 9 Sep 2025 15:19:19 +0200 Subject: [PATCH 2/2] Remove unused MatrixClient.availableSlidingSyncVersions(). --- .../android/appnav/loggedin/LoggedInPresenterTest.kt | 8 +------- .../element/android/libraries/matrix/api/MatrixClient.kt | 5 ----- .../android/libraries/matrix/impl/RustMatrixClient.kt | 6 ------ .../android/libraries/matrix/test/FakeMatrixClient.kt | 5 ----- 4 files changed, 1 insertion(+), 23 deletions(-) diff --git a/appnav/src/test/kotlin/io/element/android/appnav/loggedin/LoggedInPresenterTest.kt b/appnav/src/test/kotlin/io/element/android/appnav/loggedin/LoggedInPresenterTest.kt index d86c46f159..47cbda4b91 100644 --- a/appnav/src/test/kotlin/io/element/android/appnav/loggedin/LoggedInPresenterTest.kt +++ b/appnav/src/test/kotlin/io/element/android/appnav/loggedin/LoggedInPresenterTest.kt @@ -501,22 +501,16 @@ class LoggedInPresenterTest { @Test fun `present - CheckSlidingSyncProxyAvailability forces the sliding sync migration under the right circumstances`() = runTest { - // The migration will be forced if: - // - The user is not using the native sliding sync - // - The sliding sync proxy is no longer supported - // - The native sliding sync is supported + // The migration will be forced if the user is not using the native sliding sync val matrixClient = FakeMatrixClient( currentSlidingSyncVersionLambda = { Result.success(SlidingSyncVersion.Proxy) }, - availableSlidingSyncVersionsLambda = { Result.success(listOf(SlidingSyncVersion.Native)) }, ) createLoggedInPresenter( matrixClient = matrixClient, ).test { val initialState = awaitItem() assertThat(initialState.forceNativeSlidingSyncMigration).isFalse() - initialState.eventSink(LoggedInEvents.CheckSlidingSyncProxyAvailability) - assertThat(awaitItem().forceNativeSlidingSyncMigration).isTrue() } } diff --git a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/MatrixClient.kt b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/MatrixClient.kt index bc7ec21152..db4439332b 100644 --- a/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/MatrixClient.kt +++ b/libraries/matrix/api/src/main/kotlin/io/element/android/libraries/matrix/api/MatrixClient.kt @@ -156,11 +156,6 @@ interface MatrixClient { */ suspend fun currentSlidingSyncVersion(): Result - /** - * Returns the available sliding sync versions for the current user. - */ - suspend fun availableSlidingSyncVersions(): Result> - fun canDeactivateAccount(): Boolean suspend fun deactivateAccount(password: String, eraseData: Boolean): Result diff --git a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/RustMatrixClient.kt b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/RustMatrixClient.kt index e193d8f37d..a28bb232a4 100644 --- a/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/RustMatrixClient.kt +++ b/libraries/matrix/impl/src/main/kotlin/io/element/android/libraries/matrix/impl/RustMatrixClient.kt @@ -689,12 +689,6 @@ class RustMatrixClient( }) }.buffer(Channel.UNLIMITED) - override suspend fun availableSlidingSyncVersions(): Result> = withContext(sessionDispatcher) { - runCatchingExceptions { - innerClient.availableSlidingSyncVersions().map { it.map() } - } - } - override suspend fun currentSlidingSyncVersion(): Result = withContext(sessionDispatcher) { runCatchingExceptions { innerClient.session().slidingSyncVersion.map() diff --git a/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/FakeMatrixClient.kt b/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/FakeMatrixClient.kt index 199716bb90..4f7d42e5fb 100644 --- a/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/FakeMatrixClient.kt +++ b/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/FakeMatrixClient.kt @@ -90,7 +90,6 @@ class FakeMatrixClient( private val canDeactivateAccountResult: () -> Boolean = { lambdaError() }, private val deactivateAccountResult: (String, Boolean) -> Result = { _, _ -> lambdaError() }, private val currentSlidingSyncVersionLambda: () -> Result = { lambdaError() }, - private val availableSlidingSyncVersionsLambda: () -> Result> = { lambdaError() }, private val ignoreUserResult: (UserId) -> Result = { lambdaError() }, private var unIgnoreUserResult: (UserId) -> Result = { Result.success(Unit) }, private val canReportRoomLambda: () -> Boolean = { false }, @@ -339,10 +338,6 @@ class FakeMatrixClient( return currentSlidingSyncVersionLambda() } - override suspend fun availableSlidingSyncVersions(): Result> { - return availableSlidingSyncVersionsLambda() - } - override suspend fun canReportRoom(): Boolean { return canReportRoomLambda() }