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
@@ -10,8 +10,9 @@ import Compound
import SwiftUI
struct JoinCallButton: View {
let isVoiceCall: Bool
let action: () -> Void
var body: some View {
if #available(iOS 26, *) {
glassButton
@@ -25,7 +26,7 @@ struct JoinCallButton: View {
// Use an HStack on iOS 26 as .labelStyle(.titleAndIcon) doesn't
// seem to have any effect on a label in the navigation bar 🤷‍♂️
HStack(spacing: 6) {
CompoundIcon(\.videoCallSolid)
CompoundIcon(isVoiceCall ? \.voiceCallSolid : \.videoCallSolid)
Text(L10n.actionJoin)
.padding(.trailing, 4)
}
@@ -66,9 +67,20 @@ struct JoinCallButton_Previews: PreviewProvider {
Color.clear
.toolbar {
ToolbarItem(placement: .confirmationAction) {
JoinCallButton { }
JoinCallButton(isVoiceCall: false) { }
}
}
}
.previewDisplayName("Join Video Call")
ElementNavigationStack {
Color.clear
.toolbar {
ToolbarItem(placement: .confirmationAction) {
JoinCallButton(isVoiceCall: true) { }
}
}
}
.previewDisplayName("Join Audio Call")
}
}