Rename fun in Callback for clarity.
This commit is contained in:
parent
45b5783b23
commit
09a18ad7ca
104 changed files with 658 additions and 664 deletions
|
|
@ -167,55 +167,55 @@ class RoomDetailsFlowNode(
|
|||
return when (navTarget) {
|
||||
NavTarget.RoomDetails -> {
|
||||
val roomDetailsCallback = object : RoomDetailsNode.Callback {
|
||||
override fun openRoomMemberList() {
|
||||
override fun navigateToRoomMemberList() {
|
||||
backstack.push(NavTarget.RoomMemberList)
|
||||
}
|
||||
|
||||
override fun editRoomDetails() {
|
||||
override fun navigateToRoomDetailsEdit() {
|
||||
backstack.push(NavTarget.RoomDetailsEdit)
|
||||
}
|
||||
|
||||
override fun openInviteMembers() {
|
||||
override fun navigateToInviteMembers() {
|
||||
backstack.push(NavTarget.InviteMembers)
|
||||
}
|
||||
|
||||
override fun openRoomNotificationSettings() {
|
||||
override fun navigateToRoomNotificationSettings() {
|
||||
backstack.push(NavTarget.RoomNotificationSettings(showUserDefinedSettingStyle = false))
|
||||
}
|
||||
|
||||
override fun openAvatarPreview(name: String, url: String) {
|
||||
override fun navigateToAvatarPreview(name: String, url: String) {
|
||||
overlay.show(NavTarget.AvatarPreview(name, url))
|
||||
}
|
||||
|
||||
override fun openPollHistory() {
|
||||
override fun navigateToPollHistory() {
|
||||
backstack.push(NavTarget.PollHistory)
|
||||
}
|
||||
|
||||
override fun openMediaGallery() {
|
||||
override fun navigateToMediaGallery() {
|
||||
backstack.push(NavTarget.MediaGallery)
|
||||
}
|
||||
|
||||
override fun openAdminSettings() {
|
||||
override fun navigateToAdminSettings() {
|
||||
backstack.push(NavTarget.AdminSettings)
|
||||
}
|
||||
|
||||
override fun openPinnedMessagesList() {
|
||||
override fun navigateToPinnedMessagesList() {
|
||||
backstack.push(NavTarget.PinnedMessagesList)
|
||||
}
|
||||
|
||||
override fun openKnockRequestsList() {
|
||||
override fun navigateToKnockRequestsList() {
|
||||
backstack.push(NavTarget.KnockRequestsList)
|
||||
}
|
||||
|
||||
override fun openSecurityAndPrivacy() {
|
||||
override fun navigateToSecurityAndPrivacy() {
|
||||
backstack.push(NavTarget.SecurityAndPrivacy)
|
||||
}
|
||||
|
||||
override fun openDmUserProfile(userId: UserId) {
|
||||
override fun navigateToRoomMemberDetails(userId: UserId) {
|
||||
backstack.push(NavTarget.RoomMemberDetails(userId))
|
||||
}
|
||||
|
||||
override fun onJoinCall() {
|
||||
override fun navigateToRoomCall() {
|
||||
val inputs = CallType.RoomCall(
|
||||
sessionId = room.sessionId,
|
||||
roomId = room.roomId,
|
||||
|
|
@ -224,11 +224,11 @@ class RoomDetailsFlowNode(
|
|||
elementCallEntryPoint.startCall(inputs)
|
||||
}
|
||||
|
||||
override fun openReportRoom() {
|
||||
override fun navigateToReportRoom() {
|
||||
backstack.push(NavTarget.ReportRoom)
|
||||
}
|
||||
|
||||
override fun onSelectNewOwnersWhenLeaving() {
|
||||
override fun navigateToSelectNewOwnersWhenLeaving() {
|
||||
backstack.push(NavTarget.SelectNewOwnersWhenLeaving)
|
||||
}
|
||||
}
|
||||
|
|
@ -237,11 +237,11 @@ class RoomDetailsFlowNode(
|
|||
|
||||
NavTarget.RoomMemberList -> {
|
||||
val roomMemberListCallback = object : RoomMemberListNode.Callback {
|
||||
override fun openRoomMemberDetails(roomMemberId: UserId) {
|
||||
override fun navigateToRoomMemberDetails(roomMemberId: UserId) {
|
||||
backstack.push(NavTarget.RoomMemberDetails(roomMemberId))
|
||||
}
|
||||
|
||||
override fun openInviteMembers() {
|
||||
override fun navigateToInviteMembers() {
|
||||
backstack.push(NavTarget.InviteMembers)
|
||||
}
|
||||
}
|
||||
|
|
@ -259,8 +259,8 @@ class RoomDetailsFlowNode(
|
|||
is NavTarget.RoomNotificationSettings -> {
|
||||
val input = RoomNotificationSettingsNode.RoomNotificationSettingInput(navTarget.showUserDefinedSettingStyle)
|
||||
val callback = object : RoomNotificationSettingsNode.Callback {
|
||||
override fun openGlobalNotificationSettings() {
|
||||
plugins<RoomDetailsEntryPoint.Callback>().forEach { it.onOpenGlobalNotificationSettings() }
|
||||
override fun navigateToGlobalNotificationSettings() {
|
||||
plugins<RoomDetailsEntryPoint.Callback>().forEach { it.navigateToGlobalNotificationSettings() }
|
||||
}
|
||||
}
|
||||
createNode<RoomNotificationSettingsNode>(buildContext, listOf(input, callback))
|
||||
|
|
@ -268,19 +268,19 @@ class RoomDetailsFlowNode(
|
|||
|
||||
is NavTarget.RoomMemberDetails -> {
|
||||
val callback = object : UserProfileNodeHelper.Callback {
|
||||
override fun openAvatarPreview(username: String, avatarUrl: String) {
|
||||
override fun navigateToAvatarPreview(username: String, avatarUrl: String) {
|
||||
overlay.show(NavTarget.AvatarPreview(username, avatarUrl))
|
||||
}
|
||||
|
||||
override fun onStartDM(roomId: RoomId) {
|
||||
plugins<RoomDetailsEntryPoint.Callback>().forEach { it.onOpenRoom(roomId, emptyList()) }
|
||||
override fun navigateToRoom(roomId: RoomId) {
|
||||
plugins<RoomDetailsEntryPoint.Callback>().forEach { it.navigateToRoom(roomId, emptyList()) }
|
||||
}
|
||||
|
||||
override fun onStartCall(dmRoomId: RoomId) {
|
||||
override fun startCall(dmRoomId: RoomId) {
|
||||
elementCallEntryPoint.startCall(CallType.RoomCall(roomId = dmRoomId, sessionId = room.sessionId))
|
||||
}
|
||||
|
||||
override fun onVerifyUser(userId: UserId) {
|
||||
override fun startVerifyUserFlow(userId: UserId) {
|
||||
backstack.push(NavTarget.VerifyUser(userId))
|
||||
}
|
||||
}
|
||||
|
|
@ -293,11 +293,11 @@ class RoomDetailsFlowNode(
|
|||
overlay.hide()
|
||||
}
|
||||
|
||||
override fun onViewInTimeline(eventId: EventId) {
|
||||
override fun viewInTimeline(eventId: EventId) {
|
||||
// Cannot happen
|
||||
}
|
||||
|
||||
override fun onForwardEvent(eventId: EventId) {
|
||||
override fun forwardEvent(eventId: EventId) {
|
||||
// Cannot happen
|
||||
}
|
||||
}
|
||||
|
|
@ -318,18 +318,18 @@ class RoomDetailsFlowNode(
|
|||
backstack.pop()
|
||||
}
|
||||
|
||||
override fun onViewInTimeline(eventId: EventId) {
|
||||
override fun viewInTimeline(eventId: EventId) {
|
||||
val permalinkData = PermalinkData.RoomLink(
|
||||
roomIdOrAlias = room.roomId.toRoomIdOrAlias(),
|
||||
eventId = eventId,
|
||||
)
|
||||
plugins<RoomDetailsEntryPoint.Callback>().forEach {
|
||||
it.onPermalinkClick(permalinkData, pushToBackstack = false)
|
||||
it.handlePermalinkClick(permalinkData, pushToBackstack = false)
|
||||
}
|
||||
}
|
||||
|
||||
override fun forwardEvent(eventId: EventId) {
|
||||
plugins<RoomDetailsEntryPoint.Callback>().forEach { it.forwardEvent(eventId) }
|
||||
override fun forward(eventId: EventId) {
|
||||
plugins<RoomDetailsEntryPoint.Callback>().forEach { it.startForwardEventFlow(eventId) }
|
||||
}
|
||||
}
|
||||
mediaGalleryEntryPoint.nodeBuilder(this, buildContext)
|
||||
|
|
@ -345,20 +345,20 @@ class RoomDetailsFlowNode(
|
|||
MessagesEntryPoint.InitialTarget.PinnedMessages
|
||||
)
|
||||
val callback = object : MessagesEntryPoint.Callback {
|
||||
override fun onRoomDetailsClick() = Unit
|
||||
override fun navigateToRoomDetails() = Unit
|
||||
|
||||
override fun onUserDataClick(userId: UserId) = Unit
|
||||
override fun navigateToRoomMemberDetails(userId: UserId) = Unit
|
||||
|
||||
override fun onPermalinkClick(data: PermalinkData, pushToBackstack: Boolean) {
|
||||
plugins<RoomDetailsEntryPoint.Callback>().forEach { it.onPermalinkClick(data, pushToBackstack) }
|
||||
override fun handlePermalinkClick(data: PermalinkData, pushToBackstack: Boolean) {
|
||||
plugins<RoomDetailsEntryPoint.Callback>().forEach { it.handlePermalinkClick(data, pushToBackstack) }
|
||||
}
|
||||
|
||||
override fun forwardEvent(eventId: EventId) {
|
||||
plugins<RoomDetailsEntryPoint.Callback>().forEach { it.forwardEvent(eventId) }
|
||||
plugins<RoomDetailsEntryPoint.Callback>().forEach { it.startForwardEventFlow(eventId) }
|
||||
}
|
||||
|
||||
override fun openRoom(roomId: RoomId) {
|
||||
plugins<RoomDetailsEntryPoint.Callback>().forEach { it.onOpenRoom(roomId, emptyList()) }
|
||||
override fun navigateToRoom(roomId: RoomId) {
|
||||
plugins<RoomDetailsEntryPoint.Callback>().forEach { it.navigateToRoom(roomId, emptyList()) }
|
||||
}
|
||||
}
|
||||
return messagesEntryPoint.nodeBuilder(this, buildContext)
|
||||
|
|
@ -388,7 +388,7 @@ class RoomDetailsFlowNode(
|
|||
backstack.pop()
|
||||
}
|
||||
|
||||
override fun onLearnMoreAboutEncryption() {
|
||||
override fun navigateToLearnMoreAboutEncryption() {
|
||||
learnMoreUrl.value = LearnMoreConfig.ENCRYPTION_URL
|
||||
}
|
||||
})
|
||||
|
|
|
|||
|
|
@ -46,21 +46,21 @@ class RoomDetailsNode(
|
|||
private val leaveRoomRenderer: LeaveRoomRenderer,
|
||||
) : Node(buildContext, plugins = plugins) {
|
||||
interface Callback : Plugin {
|
||||
fun openRoomMemberList()
|
||||
fun openInviteMembers()
|
||||
fun editRoomDetails()
|
||||
fun openRoomNotificationSettings()
|
||||
fun openAvatarPreview(name: String, url: String)
|
||||
fun openPollHistory()
|
||||
fun openMediaGallery()
|
||||
fun openAdminSettings()
|
||||
fun openPinnedMessagesList()
|
||||
fun openKnockRequestsList()
|
||||
fun openSecurityAndPrivacy()
|
||||
fun openDmUserProfile(userId: UserId)
|
||||
fun onJoinCall()
|
||||
fun openReportRoom()
|
||||
fun onSelectNewOwnersWhenLeaving()
|
||||
fun navigateToRoomMemberList()
|
||||
fun navigateToInviteMembers()
|
||||
fun navigateToRoomDetailsEdit()
|
||||
fun navigateToRoomNotificationSettings()
|
||||
fun navigateToAvatarPreview(name: String, url: String)
|
||||
fun navigateToPollHistory()
|
||||
fun navigateToMediaGallery()
|
||||
fun navigateToAdminSettings()
|
||||
fun navigateToPinnedMessagesList()
|
||||
fun navigateToKnockRequestsList()
|
||||
fun navigateToSecurityAndPrivacy()
|
||||
fun navigateToRoomMemberDetails(userId: UserId)
|
||||
fun navigateToRoomCall()
|
||||
fun navigateToReportRoom()
|
||||
fun navigateToSelectNewOwnersWhenLeaving()
|
||||
}
|
||||
|
||||
private val callback = plugins<Callback>().first()
|
||||
|
|
@ -74,27 +74,27 @@ class RoomDetailsNode(
|
|||
}
|
||||
|
||||
private fun openRoomMemberList() {
|
||||
callback.openRoomMemberList()
|
||||
callback.navigateToRoomMemberList()
|
||||
}
|
||||
|
||||
private fun openRoomNotificationSettings() {
|
||||
callback.openRoomNotificationSettings()
|
||||
callback.navigateToRoomNotificationSettings()
|
||||
}
|
||||
|
||||
private fun invitePeople() {
|
||||
callback.openInviteMembers()
|
||||
callback.navigateToInviteMembers()
|
||||
}
|
||||
|
||||
private fun openPollHistory() {
|
||||
callback.openPollHistory()
|
||||
callback.navigateToPollHistory()
|
||||
}
|
||||
|
||||
private fun openMediaGallery() {
|
||||
callback.openMediaGallery()
|
||||
callback.navigateToMediaGallery()
|
||||
}
|
||||
|
||||
private fun onJoinCall() {
|
||||
callback.onJoinCall()
|
||||
callback.navigateToRoomCall()
|
||||
}
|
||||
|
||||
private fun CoroutineScope.onShareRoom(context: Context) = launch {
|
||||
|
|
@ -113,39 +113,39 @@ class RoomDetailsNode(
|
|||
}
|
||||
|
||||
private fun onEditRoomDetails() {
|
||||
callback.editRoomDetails()
|
||||
callback.navigateToRoomDetailsEdit()
|
||||
}
|
||||
|
||||
private fun openAvatarPreview(name: String, url: String) {
|
||||
callback.openAvatarPreview(name, url)
|
||||
callback.navigateToAvatarPreview(name, url)
|
||||
}
|
||||
|
||||
private fun openAdminSettings() {
|
||||
callback.openAdminSettings()
|
||||
callback.navigateToAdminSettings()
|
||||
}
|
||||
|
||||
private fun openPinnedMessages() {
|
||||
callback.openPinnedMessagesList()
|
||||
callback.navigateToPinnedMessagesList()
|
||||
}
|
||||
|
||||
private fun openKnockRequestsLists() {
|
||||
callback.openKnockRequestsList()
|
||||
callback.navigateToKnockRequestsList()
|
||||
}
|
||||
|
||||
private fun openSecurityAndPrivacy() {
|
||||
callback.openSecurityAndPrivacy()
|
||||
callback.navigateToSecurityAndPrivacy()
|
||||
}
|
||||
|
||||
private fun onProfileClick(userId: UserId) {
|
||||
callback.openDmUserProfile(userId)
|
||||
callback.navigateToRoomMemberDetails(userId)
|
||||
}
|
||||
|
||||
private fun onReportRoomClick() {
|
||||
callback.openReportRoom()
|
||||
callback.navigateToReportRoom()
|
||||
}
|
||||
|
||||
private fun onSelectNewOwnersWhenLeaving() {
|
||||
return callback.onSelectNewOwnersWhenLeaving()
|
||||
return callback.navigateToSelectNewOwnersWhenLeaving()
|
||||
}
|
||||
|
||||
private val stateFlow = launchMolecule { presenter.present() }
|
||||
|
|
|
|||
|
|
@ -35,8 +35,8 @@ class RoomMemberListNode(
|
|||
private val roomMemberModerationRenderer: RoomMemberModerationRenderer,
|
||||
) : Node(buildContext, plugins = plugins), RoomMemberListNavigator {
|
||||
interface Callback : Plugin {
|
||||
fun openRoomMemberDetails(roomMemberId: UserId)
|
||||
fun openInviteMembers()
|
||||
fun navigateToRoomMemberDetails(roomMemberId: UserId)
|
||||
fun navigateToInviteMembers()
|
||||
}
|
||||
|
||||
private val callbacks = plugins<Callback>()
|
||||
|
|
@ -51,13 +51,13 @@ class RoomMemberListNode(
|
|||
|
||||
override fun openRoomMemberDetails(roomMemberId: UserId) {
|
||||
callbacks.forEach {
|
||||
it.openRoomMemberDetails(roomMemberId)
|
||||
it.navigateToRoomMemberDetails(roomMemberId)
|
||||
}
|
||||
}
|
||||
|
||||
override fun openInviteMembers() {
|
||||
callbacks.forEach {
|
||||
it.openInviteMembers()
|
||||
it.navigateToInviteMembers()
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -62,12 +62,12 @@ class RoomMemberDetailsNode(
|
|||
userProfileNodeHelper.onShareUser(context, permalinkBuilder)
|
||||
}
|
||||
|
||||
fun onStartDM(roomId: RoomId) {
|
||||
callback.onStartDM(roomId)
|
||||
fun navigateToRoom(roomId: RoomId) {
|
||||
callback.navigateToRoom(roomId)
|
||||
}
|
||||
|
||||
fun onStartCall(roomId: RoomId) {
|
||||
callback.onStartCall(roomId)
|
||||
callback.startCall(roomId)
|
||||
}
|
||||
|
||||
val state = presenter.present()
|
||||
|
|
@ -77,10 +77,10 @@ class RoomMemberDetailsNode(
|
|||
modifier = modifier,
|
||||
goBack = this::navigateUp,
|
||||
onShareUser = ::onShareUser,
|
||||
onOpenDm = ::onStartDM,
|
||||
onOpenDm = ::navigateToRoom,
|
||||
onStartCall = ::onStartCall,
|
||||
openAvatarPreview = callback::openAvatarPreview,
|
||||
onVerifyClick = callback::onVerifyUser,
|
||||
openAvatarPreview = callback::navigateToAvatarPreview,
|
||||
onVerifyClick = callback::startVerifyUserFlow,
|
||||
)
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -35,13 +35,13 @@ class RoomNotificationSettingsNode(
|
|||
val showUserDefinedSettingStyle: Boolean
|
||||
) : NodeInputs
|
||||
interface Callback : Plugin {
|
||||
fun openGlobalNotificationSettings()
|
||||
fun navigateToGlobalNotificationSettings()
|
||||
}
|
||||
private val inputs = inputs<RoomNotificationSettingInput>()
|
||||
private val callbacks = plugins<Callback>()
|
||||
|
||||
private fun openGlobalNotificationSettings() {
|
||||
callbacks.forEach { it.openGlobalNotificationSettings() }
|
||||
private fun navigateToGlobalNotificationSettings() {
|
||||
callbacks.forEach { it.navigateToGlobalNotificationSettings() }
|
||||
}
|
||||
|
||||
private val presenter = presenterFactory.create(inputs.showUserDefinedSettingStyle)
|
||||
|
|
@ -59,7 +59,7 @@ class RoomNotificationSettingsNode(
|
|||
RoomNotificationSettingsView(
|
||||
state = state,
|
||||
modifier = modifier,
|
||||
onShowGlobalNotifications = this::openGlobalNotificationSettings,
|
||||
onShowGlobalNotifications = this::navigateToGlobalNotificationSettings,
|
||||
onBackClick = this::navigateUp,
|
||||
)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -94,10 +94,10 @@ class DefaultRoomDetailsEntryPointTest {
|
|||
)
|
||||
}
|
||||
val callback = object : RoomDetailsEntryPoint.Callback {
|
||||
override fun onOpenGlobalNotificationSettings() = lambdaError()
|
||||
override fun onOpenRoom(roomId: RoomId, serverNames: List<String>) = lambdaError()
|
||||
override fun onPermalinkClick(data: PermalinkData, pushToBackstack: Boolean) = lambdaError()
|
||||
override fun forwardEvent(eventId: EventId) = lambdaError()
|
||||
override fun navigateToGlobalNotificationSettings() = lambdaError()
|
||||
override fun navigateToRoom(roomId: RoomId, serverNames: List<String>) = lambdaError()
|
||||
override fun handlePermalinkClick(data: PermalinkData, pushToBackstack: Boolean) = lambdaError()
|
||||
override fun startForwardEventFlow(eventId: EventId) = lambdaError()
|
||||
}
|
||||
val params = RoomDetailsEntryPoint.Params(
|
||||
initialElement = RoomDetailsEntryPoint.InitialTarget.RoomDetails,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue