Merge branch 'develop' into feature/valere/super_properties
This commit is contained in:
commit
0d5bcd1f2d
253 changed files with 4421 additions and 326 deletions
|
|
@ -31,10 +31,13 @@ import dagger.assisted.Assisted
|
|||
import dagger.assisted.AssistedInject
|
||||
import io.element.android.anvilannotations.ContributesNode
|
||||
import io.element.android.features.login.api.LoginEntryPoint
|
||||
import io.element.android.features.login.api.LoginFlowType
|
||||
import io.element.android.features.onboarding.api.OnBoardingEntryPoint
|
||||
import io.element.android.features.preferences.api.ConfigureTracingEntryPoint
|
||||
import io.element.android.libraries.architecture.BackstackView
|
||||
import io.element.android.libraries.architecture.BaseFlowNode
|
||||
import io.element.android.libraries.designsystem.utils.ForceOrientationInMobileDevices
|
||||
import io.element.android.libraries.designsystem.utils.ScreenOrientation
|
||||
import io.element.android.libraries.di.AppScope
|
||||
import io.element.android.libraries.matrix.ui.media.NotLoggedInImageLoaderFactory
|
||||
import kotlinx.parcelize.Parcelize
|
||||
|
|
@ -73,9 +76,7 @@ class NotLoggedInFlowNode @AssistedInject constructor(
|
|||
data object OnBoarding : NavTarget
|
||||
|
||||
@Parcelize
|
||||
data class LoginFlow(
|
||||
val isAccountCreation: Boolean,
|
||||
) : NavTarget
|
||||
data class LoginFlow(val type: LoginFlowType) : NavTarget
|
||||
|
||||
@Parcelize
|
||||
data object ConfigureTracing : NavTarget
|
||||
|
|
@ -86,11 +87,15 @@ class NotLoggedInFlowNode @AssistedInject constructor(
|
|||
NavTarget.OnBoarding -> {
|
||||
val callback = object : OnBoardingEntryPoint.Callback {
|
||||
override fun onSignUp() {
|
||||
backstack.push(NavTarget.LoginFlow(isAccountCreation = true))
|
||||
backstack.push(NavTarget.LoginFlow(type = LoginFlowType.SIGN_UP))
|
||||
}
|
||||
|
||||
override fun onSignIn() {
|
||||
backstack.push(NavTarget.LoginFlow(isAccountCreation = false))
|
||||
backstack.push(NavTarget.LoginFlow(type = LoginFlowType.SIGN_IN_MANUAL))
|
||||
}
|
||||
|
||||
override fun onSignInWithQrCode() {
|
||||
backstack.push(NavTarget.LoginFlow(type = LoginFlowType.SIGN_IN_QR_CODE))
|
||||
}
|
||||
|
||||
override fun onOpenDeveloperSettings() {
|
||||
|
|
@ -108,7 +113,7 @@ class NotLoggedInFlowNode @AssistedInject constructor(
|
|||
}
|
||||
is NavTarget.LoginFlow -> {
|
||||
loginEntryPoint.nodeBuilder(this, buildContext)
|
||||
.params(LoginEntryPoint.Params(isAccountCreation = navTarget.isAccountCreation))
|
||||
.params(LoginEntryPoint.Params(flowType = navTarget.type))
|
||||
.build()
|
||||
}
|
||||
NavTarget.ConfigureTracing -> {
|
||||
|
|
@ -119,6 +124,9 @@ class NotLoggedInFlowNode @AssistedInject constructor(
|
|||
|
||||
@Composable
|
||||
override fun View(modifier: Modifier) {
|
||||
// The login flow doesn't support landscape mode on mobile devices yet
|
||||
ForceOrientationInMobileDevices(orientation = ScreenOrientation.PORTRAIT)
|
||||
|
||||
BackstackView()
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue