diff --git a/src/trx-client/trx-frontend/trx-frontend-http/assets/web/app.js b/src/trx-client/trx-frontend/trx-frontend-http/assets/web/app.js index e7e3524..f043566 100644 --- a/src/trx-client/trx-frontend/trx-frontend-http/assets/web/app.js +++ b/src/trx-client/trx-frontend/trx-frontend-http/assets/web/app.js @@ -2969,6 +2969,8 @@ function render(update) { currentBandwidthHz = update.filter.bandwidth_hz; window.currentBandwidthHz = currentBandwidthHz; syncBandwidthInput(currentBandwidthHz); + // Reposition BW overlay immediately so freq+bw render together. + positionFastOverlay(lastFreqHz, currentBandwidthHz); if (window.refreshCwTonePicker) { window.refreshCwTonePicker(); } diff --git a/src/trx-client/trx-frontend/trx-frontend-http/assets/web/plugins/bookmarks.js b/src/trx-client/trx-frontend/trx-frontend-http/assets/web/plugins/bookmarks.js index 766a56d..7bd3e18 100644 --- a/src/trx-client/trx-frontend/trx-frontend-http/assets/web/plugins/bookmarks.js +++ b/src/trx-client/trx-frontend/trx-frontend-http/assets/web/plugins/bookmarks.js @@ -388,7 +388,8 @@ async function bmApply(bm) { ++_freqOptimisticSeq; _freqOptimisticHz = bm.freq_hz; } - applyLocalTunedFrequency(bm.freq_hz); + // Force display so the BW overlay is repositioned even when freq is unchanged. + applyLocalTunedFrequency(bm.freq_hz, true); } if (typeof scheduleSpectrumDraw === "function" && typeof lastSpectrumData !== "undefined" && lastSpectrumData) { scheduleSpectrumDraw(); diff --git a/src/trx-client/trx-frontend/trx-frontend-http/assets/web/style.css b/src/trx-client/trx-frontend/trx-frontend-http/assets/web/style.css index 32a10fb..9539c10 100644 --- a/src/trx-client/trx-frontend/trx-frontend-http/assets/web/style.css +++ b/src/trx-client/trx-frontend/trx-frontend-http/assets/web/style.css @@ -629,7 +629,7 @@ button:disabled { opacity: 0.6; cursor: not-allowed; } flex-shrink: 0; } .sig-strength-display { - min-width: 5.2rem; + min-width: 7.5rem; height: 3.35rem; padding: 0 0.7rem; border: 1px solid var(--border-light);