Browse Source

Fix crash at first startup. Inject NotLoggedInImageLoaderFactory directly to NotLoggedInFlowNode

pull/852/head
Benoit Marty 1 year ago
parent
commit
d3a95afe86
  1. 7
      appnav/src/main/kotlin/io/element/android/appnav/NotLoggedInFlowNode.kt
  2. 2
      libraries/matrixui/src/main/kotlin/io/element/android/libraries/matrix/ui/di/MatrixUIBindings.kt

7
appnav/src/main/kotlin/io/element/android/appnav/NotLoggedInFlowNode.kt

@ -34,9 +34,8 @@ import io.element.android.features.login.api.LoginEntryPoint @@ -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( @@ -45,6 +44,7 @@ class NotLoggedInFlowNode @AssistedInject constructor(
@Assisted plugins: List<Plugin>,
private val onBoardingEntryPoint: OnBoardingEntryPoint,
private val loginEntryPoint: LoginEntryPoint,
private val notLoggedInImageLoaderFactory: NotLoggedInImageLoaderFactory,
) : BackstackNode<NotLoggedInFlowNode.NavTarget>(
backstack = BackStack(
initialElement = NavTarget.OnBoarding,
@ -57,8 +57,7 @@ class NotLoggedInFlowNode @AssistedInject constructor( @@ -57,8 +57,7 @@ class NotLoggedInFlowNode @AssistedInject constructor(
super.onBuilt()
lifecycle.subscribe(
onCreate = {
val imageLoaderFactory = bindings<MatrixUIBindings>().notLoggedInImageLoaderFactory()
Coil.setImageLoader(imageLoaderFactory)
Coil.setImageLoader(notLoggedInImageLoaderFactory)
},
)
}

2
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 @@ -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
}

Loading…
Cancel
Save