feat: separate column layout for Recent QSOs in the Main tab

The Main-tab pane and the full Recent QSOs tab are the same component sharing
one storage key, but the pane is about half as wide — so it wants fewer and
narrower columns. Whichever was opened last rewrote the other's widths.

The pane now stores under "mainpane", which also scopes its award-column
visibility and widths. The full tab keeps the historical key, so its layout is
untouched; the pane starts from defaults once.
This commit is contained in:
2026-07-27 11:58:24 +02:00
parent 678c8821c2
commit 2ad72b19fb
2 changed files with 7 additions and 0 deletions
+2
View File
@@ -4,10 +4,12 @@
"date": "2026-07-27", "date": "2026-07-27",
"en": [ "en": [
"Column layouts (widths, order, hidden columns) now stick — five faults were undoing them.", "Column layouts (widths, order, hidden columns) now stick — five faults were undoing them.",
"Recent QSOs keeps a separate column layout in the Main tab and in its own tab — the pane is half as wide there.",
"ACOM and SPE amplifiers can follow OpsLog's frequency, on a second COM port (Settings → Amplifier)." "ACOM and SPE amplifiers can follow OpsLog's frequency, on a second COM port (Settings → Amplifier)."
], ],
"fr": [ "fr": [
"Les dispositions de colonnes (largeurs, ordre, colonnes masquées) tiennent enfin — cinq défauts les défaisaient.", "Les dispositions de colonnes (largeurs, ordre, colonnes masquées) tiennent enfin — cinq défauts les défaisaient.",
"Les QSO récents gardent une disposition de colonnes distincte dans l'onglet Principal et dans leur propre onglet — le volet y est deux fois moins large.",
"Les amplificateurs ACOM et SPE peuvent suivre la fréquence d'OpsLog, sur un second port COM (Réglages → Amplificateur)." "Les amplificateurs ACOM et SPE peuvent suivre la fréquence d'OpsLog, sur un second port COM (Réglages → Amplificateur)."
] ]
}, },
+5
View File
@@ -4200,6 +4200,11 @@ export default function App() {
<div className="h-full w-full min-h-0 flex flex-col bg-card border border-border rounded-lg overflow-hidden"> <div className="h-full w-full min-h-0 flex flex-col bg-card border border-border rounded-lg overflow-hidden">
<RecentQSOsGrid <RecentQSOsGrid
key={`rqg-${activeProfileId ?? 'x'}`} key={`rqg-${activeProfileId ?? 'x'}`}
// Its OWN layout, separate from the full-width Recent QSOs tab.
// This pane is roughly half as wide, so it wants fewer columns and
// narrower ones; sharing one key meant whichever was opened last
// rewrote the other's widths.
storageKey="mainpane"
rows={qsosWithAwards as any} rows={qsosWithAwards as any}
myGrid={station.my_grid} myGrid={station.my_grid}
total={total} total={total}