diff --git a/renderer/app.js b/renderer/app.js index 31bb68b..5449469 100644 --- a/renderer/app.js +++ b/renderer/app.js @@ -3933,13 +3933,24 @@ function applyQueueDetailFilters() { } function _hasActiveQueueFilters() { - return uploadSidebarFilter !== 'all' || Boolean(queueSearchQuery || queueHosterFilter || queueStatusFilter); + return _activeQueueFilterCount() > 0; +} + +function _activeQueueFilterCount() { + return Number(uploadSidebarFilter !== 'all') + Number(Boolean(queueSearchQuery)) + Number(Boolean(queueHosterFilter)) + Number(Boolean(queueStatusFilter)); } function syncQueueFilterResetAction() { const button = document.getElementById('queueFilterResetBtn'); + const count = document.getElementById('queueActiveFilterCount'); + const activeCount = _activeQueueFilterCount(); + const active = activeCount > 0; + if (count) { + count.textContent = String(activeCount); + count.setAttribute('aria-label', String(activeCount)); + count.classList.toggle('is-active', active); + } if (!button) return; - const active = _hasActiveQueueFilters(); button.disabled = !active; } diff --git a/renderer/i18n.js b/renderer/i18n.js index f28c703..d1d4473 100644 --- a/renderer/i18n.js +++ b/renderer/i18n.js @@ -108,6 +108,7 @@ ['Bereit zum Download', 'Ready to download'], ['Abbrechen', 'Cancel'], ['Filter zurücksetzen', 'Reset filters'], + ['Filter', 'Filters'], ['Jetzt installieren', 'Install now'], ['Jetzt updaten', 'Install now'], ['Alle Dateien', 'All files'], diff --git a/renderer/index.html b/renderer/index.html index da43530..7b5f5d7 100644 --- a/renderer/index.html +++ b/renderer/index.html @@ -290,6 +290,11 @@
+
+ Filter + 0 +
+