From 8ea1699bfa6a0de7579a686fc0ac4a62413efb13 Mon Sep 17 00:00:00 2001 From: xRangerDE Date: Mon, 11 May 2026 11:03:19 +0200 Subject: [PATCH] =?UTF-8?q?ui:=20.btn:disabled=20styling=20=E2=80=94=20vis?= =?UTF-8?q?ual=20cue=20for=20disabled=20queue-action=20buttons?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The .btn base class (Queue actions: Start / Wiederholen / Leeren / Merge & Split) had no :disabled rule, so when the renderer set btnRetryFailed.disabled = true (no failed downloads in queue), the button visually looked identical to its enabled state — clickable-styled but rejecting clicks. The mouse cursor stayed `pointer` even though the button did nothing. Added .btn:disabled with the standard 0.45 opacity + cursor:not-allowed (matching .btn-pill:disabled from 4.6.21-era styling). The .btn:disabled:hover { background: inherit; } companion stops the per-variant hover rules (.btn-retry:hover, .btn-start:hover, etc.) from overriding the disabled background — the disabled state stays inert under the cursor. Affects btnRetryFailed (most visible — toggles disabled when no items are in the error state) and is also robustness against any future code that disables btnStart / btnClear / btnMergeGroup. Co-Authored-By: Claude Opus 4.7 (1M context) --- src/styles.css | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/styles.css b/src/styles.css index 8d3b838..c8d6a9f 100644 --- a/src/styles.css +++ b/src/styles.css @@ -1231,6 +1231,15 @@ select option { transition: all 0.2s; } +.btn:disabled { + opacity: 0.45; + cursor: not-allowed; +} + +.btn:disabled:hover { + background: inherit; +} + .btn:focus-visible { outline: none; box-shadow: 0 0 0 2px rgba(145, 70, 255, 0.65);