mirror of
https://github.com/Novaloop-AG/element-x-android.git
synced 2026-11-03 16:10:00 +00:00
Remove the FtueEntryPoint.Callback, LoggedInFlowNode is already observing the Ftue state to change the root target.
This commit is contained in:
committed by
Benoit Marty
parent
988057925a
commit
528e7b390b
@@ -345,11 +345,6 @@ class LoggedInFlowNode @AssistedInject constructor(
|
|||||||
}
|
}
|
||||||
NavTarget.Ftue -> {
|
NavTarget.Ftue -> {
|
||||||
ftueEntryPoint.nodeBuilder(this, buildContext)
|
ftueEntryPoint.nodeBuilder(this, buildContext)
|
||||||
.callback(object : FtueEntryPoint.Callback {
|
|
||||||
override fun onFtueFlowFinished() {
|
|
||||||
lifecycleScope.launch { attachRoomList() }
|
|
||||||
}
|
|
||||||
})
|
|
||||||
.build()
|
.build()
|
||||||
}
|
}
|
||||||
NavTarget.RoomDirectorySearch -> {
|
NavTarget.RoomDirectorySearch -> {
|
||||||
|
|||||||
-6
@@ -18,18 +18,12 @@ package io.element.android.features.ftue.api
|
|||||||
|
|
||||||
import com.bumble.appyx.core.modality.BuildContext
|
import com.bumble.appyx.core.modality.BuildContext
|
||||||
import com.bumble.appyx.core.node.Node
|
import com.bumble.appyx.core.node.Node
|
||||||
import com.bumble.appyx.core.plugin.Plugin
|
|
||||||
import io.element.android.libraries.architecture.FeatureEntryPoint
|
import io.element.android.libraries.architecture.FeatureEntryPoint
|
||||||
|
|
||||||
interface FtueEntryPoint : FeatureEntryPoint {
|
interface FtueEntryPoint : FeatureEntryPoint {
|
||||||
fun nodeBuilder(parentNode: Node, buildContext: BuildContext): NodeBuilder
|
fun nodeBuilder(parentNode: Node, buildContext: BuildContext): NodeBuilder
|
||||||
|
|
||||||
interface NodeBuilder {
|
interface NodeBuilder {
|
||||||
fun callback(callback: Callback): NodeBuilder
|
|
||||||
fun build(): Node
|
fun build(): Node
|
||||||
}
|
}
|
||||||
|
|
||||||
interface Callback : Plugin {
|
|
||||||
fun onFtueFlowFinished()
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
-5
@@ -31,11 +31,6 @@ class DefaultFtueEntryPoint @Inject constructor() : FtueEntryPoint {
|
|||||||
val plugins = ArrayList<Plugin>()
|
val plugins = ArrayList<Plugin>()
|
||||||
|
|
||||||
return object : FtueEntryPoint.NodeBuilder {
|
return object : FtueEntryPoint.NodeBuilder {
|
||||||
override fun callback(callback: FtueEntryPoint.Callback): FtueEntryPoint.NodeBuilder {
|
|
||||||
plugins += callback
|
|
||||||
return this
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun build(): Node {
|
override fun build(): Node {
|
||||||
return parentNode.createNode<FtueFlowNode>(buildContext, plugins)
|
return parentNode.createNode<FtueFlowNode>(buildContext, plugins)
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-4
@@ -32,7 +32,6 @@ import dagger.assisted.Assisted
|
|||||||
import dagger.assisted.AssistedInject
|
import dagger.assisted.AssistedInject
|
||||||
import io.element.android.anvilannotations.ContributesNode
|
import io.element.android.anvilannotations.ContributesNode
|
||||||
import io.element.android.features.analytics.api.AnalyticsEntryPoint
|
import io.element.android.features.analytics.api.AnalyticsEntryPoint
|
||||||
import io.element.android.features.ftue.api.FtueEntryPoint
|
|
||||||
import io.element.android.features.ftue.impl.notifications.NotificationsOptInNode
|
import io.element.android.features.ftue.impl.notifications.NotificationsOptInNode
|
||||||
import io.element.android.features.ftue.impl.sessionverification.FtueSessionVerificationFlowNode
|
import io.element.android.features.ftue.impl.sessionverification.FtueSessionVerificationFlowNode
|
||||||
import io.element.android.features.ftue.impl.state.DefaultFtueService
|
import io.element.android.features.ftue.impl.state.DefaultFtueService
|
||||||
@@ -86,8 +85,6 @@ class FtueFlowNode @AssistedInject constructor(
|
|||||||
data object LockScreenSetup : NavTarget
|
data object LockScreenSetup : NavTarget
|
||||||
}
|
}
|
||||||
|
|
||||||
private val callback = plugins.filterIsInstance<FtueEntryPoint.Callback>().firstOrNull()
|
|
||||||
|
|
||||||
override fun onBuilt() {
|
override fun onBuilt() {
|
||||||
super.onBuilt()
|
super.onBuilt()
|
||||||
|
|
||||||
@@ -157,7 +154,7 @@ class FtueFlowNode @AssistedInject constructor(
|
|||||||
FtueStep.LockscreenSetup -> {
|
FtueStep.LockscreenSetup -> {
|
||||||
backstack.newRoot(NavTarget.LockScreenSetup)
|
backstack.newRoot(NavTarget.LockScreenSetup)
|
||||||
}
|
}
|
||||||
null -> callback?.onFtueFlowFinished()
|
null -> Unit
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user