fix: clear entry-strip award refs when the callsign changes (not only on wipe)
award_refs was only reset when the callsign was emptied, so swapping from one call to another (e.g. clicking successive spots) kept the previous station's references in the F3 Awards tab. Move the reset to just past the same-call guard so any change clears them; the new call's spot POTA + live detection re-populate right after. Changelog 0.21.1.
This commit is contained in:
+4
-2
@@ -7,14 +7,16 @@
|
|||||||
"ADIF export field picker: the per-group All / None buttons work again.",
|
"ADIF export field picker: the per-group All / None buttons work again.",
|
||||||
"Station Control: cards now pack tightly into balanced columns instead of leaving big gaps under shorter panels — a cleaner, more even dashboard.",
|
"Station Control: cards now pack tightly into balanced columns instead of leaving big gaps under shorter panels — a cleaner, more even dashboard.",
|
||||||
"Main-view band map: Ctrl+↑ / Ctrl+↓ jumps to the next spot above / below the current frequency and tunes to it.",
|
"Main-view band map: Ctrl+↑ / Ctrl+↓ jumps to the next spot above / below the current frequency and tunes to it.",
|
||||||
"QSO details → Awards: the 'this contact will count for' list is now compact (CODE@REF chips, full name on hover) with a capped height, so it no longer hides the awards you've selected."
|
"QSO details → Awards: the 'this contact will count for' list is now compact (CODE@REF chips, full name on hover) with a capped height, so it no longer hides the awards you've selected.",
|
||||||
|
"Fixed award references (in the entry strip's Awards tab) not clearing when the callsign changes — clicking one spot then another no longer keeps the previous station's references."
|
||||||
],
|
],
|
||||||
"fr": [
|
"fr": [
|
||||||
"Correction du thème qui revenait parfois au défaut à la réouverture d'OpsLog — il est maintenant restauré de façon fiable.",
|
"Correction du thème qui revenait parfois au défaut à la réouverture d'OpsLog — il est maintenant restauré de façon fiable.",
|
||||||
"Sélecteur de champs à l'export ADIF : les boutons Tout / Aucun par groupe refonctionnent.",
|
"Sélecteur de champs à l'export ADIF : les boutons Tout / Aucun par groupe refonctionnent.",
|
||||||
"Station Control : les cartes se rangent en colonnes équilibrées et se tassent au lieu de laisser de gros trous sous les panneaux plus courts — tableau de bord plus propre et régulier.",
|
"Station Control : les cartes se rangent en colonnes équilibrées et se tassent au lieu de laisser de gros trous sous les panneaux plus courts — tableau de bord plus propre et régulier.",
|
||||||
"Band map de l'écran principal : Ctrl+↑ / Ctrl+↓ saute au spot suivant au-dessus / en dessous de la fréquence courante et s'y accorde.",
|
"Band map de l'écran principal : Ctrl+↑ / Ctrl+↓ saute au spot suivant au-dessus / en dessous de la fréquence courante et s'y accorde.",
|
||||||
"Détails du QSO → Diplômes : la liste « ce contact comptera pour » est maintenant compacte (pastilles CODE@REF, nom complet au survol) et de hauteur limitée, elle ne masque plus les diplômes sélectionnés."
|
"Détails du QSO → Diplômes : la liste « ce contact comptera pour » est maintenant compacte (pastilles CODE@REF, nom complet au survol) et de hauteur limitée, elle ne masque plus les diplômes sélectionnés.",
|
||||||
|
"Correction des références de diplômes (onglet Diplômes de la bande de saisie) qui ne se vidaient pas au changement d'indicatif — cliquer un spot puis un autre ne garde plus les références de la station précédente."
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -2836,17 +2836,19 @@ export default function App() {
|
|||||||
// reload worked-before + the band matrix, making them flicker. Compared
|
// reload worked-before + the band matrix, making them flicker. Compared
|
||||||
// via the ref so it's correct even from the stale UDP closure.
|
// via the ref so it's correct even from the stale UDP closure.
|
||||||
if (v.trim().toUpperCase() === callsignValRef.current.trim().toUpperCase()) return;
|
if (v.trim().toUpperCase() === callsignValRef.current.trim().toUpperCase()) return;
|
||||||
|
// The callsign CHANGED (past the same-call guard) → drop the previous
|
||||||
|
// contact's award references. They're auto-added per call (live detection
|
||||||
|
// merges pickable refs into award_refs) or picked by hand, so without clearing
|
||||||
|
// here they carry over to the NEXT call — e.g. clicking one Italian spot
|
||||||
|
// (WAIP@RG), then another (WAIP@PG), then EJ7IRB still showing both. The new
|
||||||
|
// call's lookup re-detects its own refs right after. Covers wipe AND swap.
|
||||||
|
updateDetails({ award_refs: '' });
|
||||||
// QSO recorder: a non-empty callsign marks the QSO start (the recorder
|
// QSO recorder: a non-empty callsign marks the QSO start (the recorder
|
||||||
// keeps the pre-roll from before this); clearing it discards the take.
|
// keeps the pre-roll from before this); clearing it discards the take.
|
||||||
// Recording START happens on blur (leaving the callsign field), NOT here —
|
// Recording START happens on blur (leaving the callsign field), NOT here —
|
||||||
// you may type a call and work it minutes later. Clearing it cancels.
|
// you may type a call and work it minutes later. Clearing it cancels.
|
||||||
if (v.trim() === '') {
|
if (v.trim() === '') {
|
||||||
QSOAudioCancel(); setRecording(false); recordingCallRef.current = "";
|
QSOAudioCancel(); setRecording(false); recordingCallRef.current = "";
|
||||||
// Callsign wiped → drop this contact's award references. They are auto-added
|
|
||||||
// per call (live detection merges pickable refs into award_refs), so without
|
|
||||||
// this they'd carry over to the NEXT call — e.g. IT9AOT's ref lingering when
|
|
||||||
// you then type F4BPO, showing both in the F3 Awards tab.
|
|
||||||
updateDetails({ award_refs: '' });
|
|
||||||
}
|
}
|
||||||
const isEmpty = v.trim() === '';
|
const isEmpty = v.trim() === '';
|
||||||
if (!isEmpty && !locks.start) {
|
if (!isEmpty && !locks.start) {
|
||||||
|
|||||||
Reference in New Issue
Block a user