diff --git a/turnstone/ui/static/app.js b/turnstone/ui/static/app.js index 6ee6f06c..410a584d 100644 --- a/turnstone/ui/static/app.js +++ b/turnstone/ui/static/app.js @@ -3368,30 +3368,19 @@ function renderSavedWorkstreams(items) { chk.type = "checkbox"; chk.className = "ws-card-check"; chk.checked = !!_wsDeleteSelected[sess.ws_id]; - chk.setAttribute("tabindex", "-1"); - chk.setAttribute("aria-hidden", "true"); + chk.setAttribute("aria-label", "Select " + label + " for deletion"); chk.onclick = function (e) { e.stopPropagation(); if (chk.checked) _wsDeleteSelected[sess.ws_id] = true; else delete _wsDeleteSelected[sess.ws_id]; card.classList.toggle("ws-selected", chk.checked); - card.setAttribute("aria-checked", chk.checked ? "true" : "false"); updateWsDeleteBar(); }; card.appendChild(chk); card.setAttribute("tabindex", "0"); - card.setAttribute("role", "checkbox"); - card.setAttribute("aria-checked", chk.checked ? "true" : "false"); card.onclick = function (e) { if (e.target === chk) return; - if (chk.checked) { - chk.classList.add("ws-check-hint"); - setTimeout(function () { - chk.classList.remove("ws-check-hint"); - }, 600); - return; - } - chk.checked = true; + chk.checked = !chk.checked; chk.onclick(e); }; card.onkeydown = function (e) { diff --git a/turnstone/ui/static/style.css b/turnstone/ui/static/style.css index 649370db..558f0ec9 100644 --- a/turnstone/ui/static/style.css +++ b/turnstone/ui/static/style.css @@ -1522,13 +1522,7 @@ audio.media-player { opacity: 0; animation: ws-check-fadein 0.2s ease-out forwards; } -.ws-card-check.ws-check-hint { - outline: 2px solid var(--red); - outline-offset: 2px; - animation: ws-check-pulse 0.6s ease-out; -} @keyframes ws-check-fadein { to { opacity: 1; } } -@keyframes ws-check-pulse { 0% { transform: scale(1.3); } 100% { transform: scale(1); } } .dashboard-card.ws-selected { border-color: var(--red); background: rgba(248, 113, 113, 0.08); @@ -1550,7 +1544,6 @@ audio.media-player { @keyframes ws-bar-slide { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: translateY(0); } } @media (prefers-reduced-motion: reduce) { .ws-card-check { animation: none; opacity: 1; } - .ws-card-check.ws-check-hint { animation: none; } .ws-delete-bar.visible { animation: none; } } .ws-delete-bar .ws-delete-count-label { font-size: 12px; color: var(--fg-dim); }