diff --git a/app/web/static/compare-select.js b/app/web/static/compare-select.js index 281f2d6..cdc8342 100644 --- a/app/web/static/compare-select.js +++ b/app/web/static/compare-select.js @@ -8,6 +8,7 @@ const selected = new Set(); const btn = document.getElementById('compare-btn'); + const clearBtn = document.getElementById('compare-clear'); const countEl = document.getElementById('compare-count'); const slot = document.getElementById('runs-slot'); if (!btn || !countEl || !slot) return; @@ -16,6 +17,7 @@ const n = selected.size; countEl.textContent = `(${n}/${MAX})`; btn.disabled = n < MIN || n > MAX; + if (clearBtn) clearBtn.hidden = n === 0; } function applyToDOM() { @@ -58,5 +60,10 @@ window.open(`/compare?${qs}`, '_blank', 'noopener'); }); + if (clearBtn) clearBtn.addEventListener('click', () => { + selected.clear(); + applyToDOM(); + }); + applyToDOM(); })(); diff --git a/app/web/static/style.css b/app/web/static/style.css index eb9ce39..4d0b315 100644 --- a/app/web/static/style.css +++ b/app/web/static/style.css @@ -513,6 +513,18 @@ button.submit:disabled { background: var(--faint); border-color: var(--faint); c font-size: 0.76rem; font-style: italic; } +.compare-bar .compare-clear { + background: transparent; + border: 0; + color: var(--faint); + font: inherit; + font-size: 0.72rem; + padding: 0 0.2rem; + cursor: pointer; + text-decoration: underline dotted; + text-underline-offset: 3px; +} +.compare-bar .compare-clear:hover { color: var(--alarm); } .runs-filter { display: flex; diff --git a/app/web/templates/index.html b/app/web/templates/index.html index dbf8f74..5e2e0fb 100644 --- a/app/web/templates/index.html +++ b/app/web/templates/index.html @@ -4,7 +4,7 @@ embedding notebook - + - +