Support for ongoing voice vs video call + joining (#5399)

This commit is contained in:
Valere Fedronic
2026-04-21 11:11:52 +02:00
committed by GitHub
parent d9013208dd
commit d49a6e5a5d
31 changed files with 185 additions and 54 deletions
@@ -719,8 +719,8 @@ class RoomFlowCoordinator: FlowCoordinatorProtocol {
stateMachine.tryEvent(.startMembersFlow(entryPoint: .roomMember(userID: userID)))
case .presentMessageForwarding(let forwardingItem):
stateMachine.tryEvent(.presentMessageForwarding(forwardingItem: forwardingItem))
case .presentCallScreen:
actionsSubject.send(.presentCallScreen(roomProxy: roomProxy, isVoiceCall: false))
case .presentCallScreen(let isVoiceCall):
actionsSubject.send(.presentCallScreen(roomProxy: roomProxy, isVoiceCall: isVoiceCall))
case .presentPinnedEventsTimeline:
stateMachine.tryEvent(.presentPinnedEventsTimeline)
case .presentResolveSendFailure(failure: let failure, sendHandle: let sendHandle):
@@ -529,8 +529,8 @@ class SpaceFlowCoordinator: FlowCoordinatorProtocol {
guard let self else { return }
switch action {
case .presentCallScreen(let roomProxy, _):
actionsSubject.send(.presentCallScreen(roomProxy: roomProxy, isVoiceCall: false))
case .presentCallScreen(let roomProxy, let isVoiceCall):
actionsSubject.send(.presentCallScreen(roomProxy: roomProxy, isVoiceCall: isVoiceCall))
case .verifyUser(let userID):
actionsSubject.send(.verifyUser(userID: userID))
case .continueWithSpaceFlow(let spaceRoomListProxy):
@@ -557,8 +557,8 @@ class SpaceFlowCoordinator: FlowCoordinatorProtocol {
switch actions {
case .finished:
stateMachine.tryEvent(.stopMembersFlow)
case .presentCallScreen(let roomProxy, _):
actionsSubject.send(.presentCallScreen(roomProxy: roomProxy, isVoiceCall: false))
case .presentCallScreen(let roomProxy, let isVoiceCall):
actionsSubject.send(.presentCallScreen(roomProxy: roomProxy, isVoiceCall: isVoiceCall))
case .verifyUser(let userID):
actionsSubject.send(.verifyUser(userID: userID))
}
@@ -581,8 +581,8 @@ class SpaceFlowCoordinator: FlowCoordinatorProtocol {
if leftRoom {
stateMachine.tryEvent(.leftSpace)
}
case .presentCallScreen(let roomProxy):
actionsSubject.send(.presentCallScreen(roomProxy: roomProxy, isVoiceCall: false))
case .presentCallScreen(let roomProxy, let isVoiceCall):
actionsSubject.send(.presentCallScreen(roomProxy: roomProxy, isVoiceCall: isVoiceCall))
case .verifyUser(userID: let userID):
actionsSubject.send(.verifyUser(userID: userID))
}
@@ -11,7 +11,7 @@ import SwiftState
enum SpaceSettingsFlowCoordinatorAction {
case finished(leftRoom: Bool)
case presentCallScreen(roomProxy: JoinedRoomProxyProtocol)
case presentCallScreen(roomProxy: JoinedRoomProxyProtocol, isVoiceCall: Bool)
case verifyUser(userID: String)
}
@@ -395,8 +395,8 @@ final class SpaceSettingsFlowCoordinator: FlowCoordinatorProtocol {
switch action {
case .finished:
stateMachine.tryEvent(.stopMembersListFlow)
case .presentCallScreen(let roomProxy, _):
actionsSubject.send(.presentCallScreen(roomProxy: roomProxy))
case .presentCallScreen(let roomProxy, let isVoiceCall):
actionsSubject.send(.presentCallScreen(roomProxy: roomProxy, isVoiceCall: isVoiceCall))
case .verifyUser(let userID):
actionsSubject.send(.verifyUser(userID: userID))
}