refactor(config): niente configurazione cablata — tutto parametrizzato (v0.3.0)

Prima di pubblicare: eliminati dai sorgenti tutti i valori "cablati".

- settings: default neutri (URL, voce, engine vuoti = "decide il server");
  nuove chiavi ttsVoices/ttsEngines (preset dei selettori) e vadMaxMs
  (durata massima registrazione, prima fissa a 60 s nel codice)
- ApiClient: guard su baseUrl vuoto (checkAuth/login si comportano senza
  rete), voce/engine omessi nella richiesta TTS se vuoti, Content-Type
  audio coerente col formato reale del file (ogg/wav/mp3/m4a/opus)
- SettingsPage: selettori voce/engine costruiti dai preset configurabili
  (Repeater dentro ContextMenu = pattern provato su tide) + campi per
  modificare i preset; LoginPage richiede indirizzo server non vuoto
- VoiceRecorder: tetto di registrazione da configurazione
- README: sezione "Configuration" completa; docs neutralizzate (niente
  URL/valori personali: repo public-friendly)
This commit is contained in:
2026-09-12 12:42:06 +02:00
parent 558a384339
commit a5932f0025
11 changed files with 232 additions and 64 deletions
+1 -1
View File
@@ -45,7 +45,7 @@ Page {
Button {
anchors.horizontalCenter: parent.horizontalCenter
text: api.busy ? qsTr("Signing in…") : qsTr("Sign in")
enabled: !api.busy && passField.text.length > 0
enabled: !api.busy && passField.text.length > 0 && urlField.text.trim().length > 0
onClicked: page.doLogin()
}