diff --git a/app.go b/app.go
index ac73d65..299ce49 100644
--- a/app.go
+++ b/app.go
@@ -13245,6 +13245,14 @@ func (a *App) SaveWinkeyerSettings(s WinkeyerSettings) error {
return err
}
}
+ // Apply line-control changes (PTT keying, key line, invert, lead/tail, speed)
+ // to a running serial keyer immediately — no reconnect needed. Harmless when
+ // the keyer isn't the serial type or isn't connected.
+ if a.winkeyer != nil && s.Engine == "serial" {
+ cfg := s.Config
+ cfg.Type = "serial"
+ a.winkeyer.ApplySerialConfig(cfg)
+ }
return nil
}
diff --git a/changelog.json b/changelog.json
index 0722c65..8e3682f 100644
--- a/changelog.json
+++ b/changelog.json
@@ -3,10 +3,12 @@
"version": "0.20.12",
"date": "2026-07-23",
"en": [
+ "Serial CW keyer: 'Key PTT line' now defaults on when you pick the Serial engine (without it the rig drops to RX between words on semi-break-in), and changing the PTT / key-line / speed options now applies immediately without disconnecting the keyer. It also logs each transmission's PTT state to help diagnose a rig that still won't hold TX.",
"New (Settings → General): show the ClubLog 'Most Wanted' rank in the entry-strip band matrix. When on, a 'MW #rank' pill appears next to the DXCC entity name (1 = the most wanted entity), coloured hotter the more wanted it is. The list is fetched from ClubLog and personalised to your callsign, refreshed daily.",
"Fixed the colour theme sometimes resetting to light after an update/relaunch: an update can clear the WebView's localStorage, and the fallback that restores the theme from the local settings database gave up after ~2.4s — occasionally too soon during the brief startup window before that store is ready. It now keeps retrying until the store actually answers, so a dark theme is reliably restored."
],
"fr": [
+ "Keyer CW série : « Key PTT line » est maintenant activé par défaut quand on choisit le moteur Série (sans lui la radio retombe en RX entre les mots en semi-break-in), et changer les options PTT / ligne de manip / vitesse s'applique immédiatement sans déconnecter le keyer. Il logue aussi l'état PTT de chaque émission pour diagnostiquer une radio qui ne tient toujours pas le TX.",
"Nouveau (Réglages → Général) : afficher le rang « Most Wanted » de ClubLog dans la matrice de bandes de la barre de saisie. Activé, une pastille « MW #rang » apparaît à côté du nom de l'entité DXCC (1 = l'entité la plus recherchée), d'autant plus colorée qu'elle est recherchée. La liste est récupérée depuis ClubLog et personnalisée selon ton indicatif, rafraîchie quotidiennement.",
"Correction du thème de couleur qui revenait parfois au clair après une mise à jour/relancement : une mise à jour peut vider le localStorage de la WebView, et le repli qui restaure le thème depuis la base de réglages locale abandonnait après ~2,4s — parfois trop tôt pendant le court instant de démarrage avant que ce store soit prêt. Il réessaie maintenant jusqu'à ce que le store réponde vraiment, donc un thème sombre est restauré de façon fiable."
]
diff --git a/frontend/src/components/SettingsModal.tsx b/frontend/src/components/SettingsModal.tsx
index 08dbb7a..f2c42ba 100644
--- a/frontend/src/components/SettingsModal.tsx
+++ b/frontend/src/components/SettingsModal.tsx
@@ -3027,7 +3027,9 @@ export function SettingsModal({ onClose, onSaved, initialSection, onMainPaneChan