feat(ios): surface gateway talk defaults and refresh icon assets (#22530)

Merged via /review-pr -> /prepare-pr -> /merge-pr.

Prepared head SHA: 54f3a40e22
Co-authored-by: ngutman <1540134+ngutman@users.noreply.github.com>
Co-authored-by: ngutman <1540134+ngutman@users.noreply.github.com>
Reviewed-by: @ngutman
This commit is contained in:
Nimrod Gutman
2026-02-21 10:34:20 +02:00
committed by GitHub
parent e93e67bc8e
commit 78caf9ec3d
43 changed files with 37 additions and 37 deletions

View File

@@ -306,6 +306,26 @@ struct SettingsTab: View {
help: "Keeps the screen awake while OpenClaw is open.")
DisclosureGroup("Advanced") {
VStack(alignment: .leading, spacing: 8) {
Text("Talk Voice (Gateway)")
.font(.footnote.weight(.semibold))
.foregroundStyle(.secondary)
LabeledContent("Provider", value: "ElevenLabs")
LabeledContent(
"API Key",
value: self.appModel.talkMode.gatewayTalkConfigLoaded
? (self.appModel.talkMode.gatewayTalkApiKeyConfigured ? "Configured" : "Not configured")
: "Not loaded")
LabeledContent(
"Default Model",
value: self.appModel.talkMode.gatewayTalkDefaultModelId ?? "eleven_v3 (fallback)")
LabeledContent(
"Default Voice",
value: self.appModel.talkMode.gatewayTalkDefaultVoiceId ?? "auto (first available)")
Text("Configured on gateway via talk.apiKey, talk.modelId, and talk.voiceId.")
.font(.footnote)
.foregroundStyle(.secondary)
}
self.featureToggle(
"Voice Directive Hint",
isOn: self.$talkVoiceDirectiveHintEnabled,
@@ -399,6 +419,9 @@ struct SettingsTab: View {
// Keep setup front-and-center when disconnected; keep things compact once connected.
self.gatewayExpanded = !self.isGatewayConnected
self.selectedAgentPickerId = self.appModel.selectedAgentId ?? ""
if self.isGatewayConnected {
self.appModel.reloadTalkConfig()
}
}
.onChange(of: self.selectedAgentPickerId) { _, newValue in
let trimmed = newValue.trimmingCharacters(in: .whitespacesAndNewlines)