Ensure a Callback and only one is provided in the Plugin. Also reduce boilerplate code in Nodes.
This commit is contained in:
parent
2e8785b36b
commit
be03c50aaf
76 changed files with 374 additions and 741 deletions
|
|
@ -12,10 +12,10 @@ import androidx.compose.ui.Modifier
|
|||
import com.bumble.appyx.core.modality.BuildContext
|
||||
import com.bumble.appyx.core.node.Node
|
||||
import com.bumble.appyx.core.plugin.Plugin
|
||||
import com.bumble.appyx.core.plugin.plugins
|
||||
import dev.zacsweers.metro.Assisted
|
||||
import dev.zacsweers.metro.AssistedInject
|
||||
import io.element.android.annotations.ContributesNode
|
||||
import io.element.android.libraries.architecture.callback
|
||||
import io.element.android.libraries.di.RoomScope
|
||||
import io.element.android.libraries.matrix.api.core.EventId
|
||||
|
||||
|
|
@ -33,16 +33,14 @@ class PollHistoryNode(
|
|||
fun navigateToEditPoll(pollStartEventId: EventId)
|
||||
}
|
||||
|
||||
private fun onEditPoll(pollStartEventId: EventId) {
|
||||
plugins<Callback>().forEach { it.navigateToEditPoll(pollStartEventId) }
|
||||
}
|
||||
private val callback: Callback = callback()
|
||||
|
||||
@Composable
|
||||
override fun View(modifier: Modifier) {
|
||||
PollHistoryView(
|
||||
state = presenter.present(),
|
||||
modifier = modifier,
|
||||
onEditPoll = ::onEditPoll,
|
||||
onEditPoll = callback::navigateToEditPoll,
|
||||
goBack = this::navigateUp,
|
||||
)
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue