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 e659a3a..b4af334 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 @@ -1214,17 +1214,6 @@ const BW_OVERLAY_COLORS = { hard: [240 / 255, 173 / 255, 78 / 255, 0.38], }; -// Bandplan mode colours for WebGL rendering (normalised RGBA). -const BANDPLAN_MODE_COLORS = { - CW: [74 / 255, 144 / 255, 217 / 255, 0.55], - Phone: [76 / 255, 175 / 255, 80 / 255, 0.50], - Narrow: [217 / 255, 74 / 255, 122 / 255, 0.50], - FM: [1, 152 / 255, 0, 0.50], - All: [120 / 255, 120 / 255, 120 / 255, 0.40], - Beacon: [156 / 255, 39 / 255, 176 / 255, 0.50], - Satellite: [0, 188 / 255, 212 / 255, 0.50], -}; -const BANDPLAN_STRIP_CSS_HEIGHT = 18; // CSS pixels const BOOKMARK_MARKER_FALLBACK = "#66d9ef"; function overviewWfResetTextureCache() { @@ -10193,38 +10182,6 @@ function drawSpectrum(data) { spectrumGl.drawPoints(spectrumTmpMarkerPoints, Math.max(2, dpr * 1.6), cssColorToRgba(pal.waveformPeak)); } - // ── Bandplan WebGL strip (top of spectrum) ── - if (bandplanRegion !== "off" && bandplanData) { - const bpSegs = bandplanVisibleSegments(bandplanRegion, range.visLoHz, range.visHiHz); - if (bpSegs.length > 0) { - const bpH = Math.round(BANDPLAN_STRIP_CSS_HEIGHT * dpr); - const bpY = 0; - // Dark backdrop so segments are readable over the spectrum fill. - spectrumGl.fillRect(0, bpY, W, bpH, [0.07, 0.09, 0.15, 0.82]); - // Thin separator line at bottom of bandplan strip. - spectrumGl.drawSegments([0, bpH, W, bpH], - [1, 1, 1, 0.08], Math.max(1, dpr * 0.5)); - const bpVerts = []; - for (const seg of bpSegs) { - const l = Math.max(0, (seg.low_hz - range.visLoHz) / range.visSpanHz); - const r = Math.min(1, (seg.high_hz - range.visLoHz) / range.visSpanHz); - const xL = l * W; - const xW = Math.max(1, (r - l) * W); - const col = BANDPLAN_MODE_COLORS[seg.mode] || BANDPLAN_MODE_COLORS.All; - // Build two triangles per segment (batched into one draw call). - bpVerts.push( - xL, bpY, col[0], col[1], col[2], col[3], - xL + xW, bpY, col[0], col[1], col[2], col[3], - xL + xW, bpY + bpH, col[0], col[1], col[2], col[3], - xL, bpY, col[0], col[1], col[2], col[3], - xL + xW, bpY + bpH, col[0], col[1], col[2], col[3], - xL, bpY + bpH, col[0], col[1], col[2], col[3], - ); - } - spectrumGl.drawTriangles(bpVerts); - } - } - // ── Crosshair lines ── if (spectrumCrosshairX != null && spectrumCrosshairY != null) { const cx = spectrumCrosshairX * dpr; @@ -11675,7 +11632,7 @@ function bandplanVisibleSegments(region, loHz, hiHz) { function _hideBandplanStrip() { if (!bandplanStripEl) return; - bandplanStripEl.classList.remove("bp-visible", "bp-webgl"); + bandplanStripEl.classList.remove("bp-visible"); bandplanStripEl.innerHTML = ""; bandplanCacheKey = ""; } @@ -11693,22 +11650,9 @@ function updateBandplanStrip(range) { return; } - // When spectrum canvas is visible the coloured segments are rendered via - // WebGL inside drawSpectrum(). The DOM strip then only provides text labels - // overlaid at the bottom of the spectrum canvas. For non-SDR rigs (no - // spectrum) the strip falls back to the original DOM-coloured rendering. - const spectrumPanelEl = document.getElementById("spectrum-panel"); - const webglMode = spectrumPanelEl && getComputedStyle(spectrumPanelEl).display !== "none"; - bandplanStripEl.classList.add("bp-visible"); - if (webglMode) { - bandplanStripEl.classList.add("bp-webgl"); - } else { - bandplanStripEl.classList.remove("bp-webgl"); - } const newKey = bandplanRegion + ":" + (bandplanShowLabels ? "L" : "N") + ":" + - (webglMode ? "G:" : "D:") + segments.map((s) => s.low_hz + "-" + s.high_hz).join(","); const stripW = bandplanStripEl.clientWidth || 1; 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 334b447..45662a6 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 @@ -3301,14 +3301,6 @@ button:focus-visible, input:focus-visible, select:focus-visible { z-index: 1; } -/* ── WebGL overlay mode ── When the spectrum canvas is visible the coloured - segments are also rendered via WebGL inside drawSpectrum(). The DOM strip - stays above the waterfall with its own coloured segments visible. */ -#spectrum-bandplan-strip.bp-webgl { - /* No repositioning needed – the strip lives above the overview strip - in the .signal-visual-block flex flow. */ -} - /* Legend in settings */ .bandplan-legend-grid { display: flex;