From 8893a8bfdce6aef9b8a8c3c0808e1fd92e63049c Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Wed, 12 Jul 2023 15:32:00 +0200 Subject: [PATCH] Fix crash at first startup. Inject NotLoggedInImageLoaderFactory directly to NotLoggedInFlowNode --- .../io/element/android/appnav/NotLoggedInFlowNode.kt | 7 +++---- .../android/libraries/matrix/ui/di/MatrixUIBindings.kt | 2 -- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/appnav/src/main/kotlin/io/element/android/appnav/NotLoggedInFlowNode.kt b/appnav/src/main/kotlin/io/element/android/appnav/NotLoggedInFlowNode.kt index ac17f6ad00..1ed1aec678 100644 --- a/appnav/src/main/kotlin/io/element/android/appnav/NotLoggedInFlowNode.kt +++ b/appnav/src/main/kotlin/io/element/android/appnav/NotLoggedInFlowNode.kt @@ -34,9 +34,8 @@ import io.element.android.features.login.api.LoginEntryPoint import io.element.android.features.onboarding.api.OnBoardingEntryPoint import io.element.android.libraries.architecture.BackstackNode import io.element.android.libraries.architecture.animation.rememberDefaultTransitionHandler -import io.element.android.libraries.architecture.bindings import io.element.android.libraries.di.AppScope -import io.element.android.libraries.matrix.ui.di.MatrixUIBindings +import io.element.android.libraries.matrix.ui.media.NotLoggedInImageLoaderFactory import kotlinx.parcelize.Parcelize @ContributesNode(AppScope::class) @@ -45,6 +44,7 @@ class NotLoggedInFlowNode @AssistedInject constructor( @Assisted plugins: List, private val onBoardingEntryPoint: OnBoardingEntryPoint, private val loginEntryPoint: LoginEntryPoint, + private val notLoggedInImageLoaderFactory: NotLoggedInImageLoaderFactory, ) : BackstackNode( backstack = BackStack( initialElement = NavTarget.OnBoarding, @@ -57,8 +57,7 @@ class NotLoggedInFlowNode @AssistedInject constructor( super.onBuilt() lifecycle.subscribe( onCreate = { - val imageLoaderFactory = bindings().notLoggedInImageLoaderFactory() - Coil.setImageLoader(imageLoaderFactory) + Coil.setImageLoader(notLoggedInImageLoaderFactory) }, ) } diff --git a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/di/MatrixUIBindings.kt b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/di/MatrixUIBindings.kt index a5734f5b9c..919971b307 100644 --- a/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/di/MatrixUIBindings.kt +++ b/libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/di/MatrixUIBindings.kt @@ -19,10 +19,8 @@ package io.element.android.libraries.matrix.ui.di import com.squareup.anvil.annotations.ContributesTo import io.element.android.libraries.di.SessionScope import io.element.android.libraries.matrix.ui.media.LoggedInImageLoaderFactory -import io.element.android.libraries.matrix.ui.media.NotLoggedInImageLoaderFactory @ContributesTo(SessionScope::class) interface MatrixUIBindings { fun loggedInImageLoaderFactory(): LoggedInImageLoaderFactory - fun notLoggedInImageLoaderFactory(): NotLoggedInImageLoaderFactory }