in AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Presentation/SwiftUI/ViewComponents/VideoView/LocalVideoViewModel.swift [55:84]
func update(localUserState: LocalUserState, visibilityState: VisibilityState) {
if localVideoStreamId != localUserState.localVideoStreamIdentifier {
localVideoStreamId = localUserState.localVideoStreamIdentifier
}
if displayName != localUserState.displayName {
displayName = localUserState.displayName
}
if cameraOperationalStatus != localUserState.cameraState.operation {
cameraOperationalStatus = localUserState.cameraState.operation
}
cameraSwitchButtonPipViewModel.update(isDisabled: localUserState.cameraState.device == .switching)
cameraSwitchButtonPipViewModel.update(accessibilityLabel: localUserState.cameraState.device == .front
? localizationProvider.getLocalizedString(.frontCamera)
: localizationProvider.getLocalizedString(.backCamera))
cameraSwitchButtonFullViewModel.update(isDisabled: localUserState.cameraState.device == .switching)
cameraSwitchButtonFullViewModel.update(accessibilityLabel: localUserState.cameraState.device == .front
? localizationProvider.getLocalizedString(.frontCamera)
: localizationProvider.getLocalizedString(.backCamera))
let showMuted = localUserState.audioState.operation != .on
if isMuted != showMuted {
isMuted = showMuted
}
isInPip = visibilityState.currentStatus == .pipModeEntered
}