From fb544efe2f107725cc63f1f3307a2eb04395384b Mon Sep 17 00:00:00 2001
From: Sucukdeluxe <259325684+Sucukdeluxe@users.noreply.github.com>
Date: Fri, 21 Aug 2026 01:06:16 +0200
Subject: [PATCH] feat: show the active queue filter count
Add a fixed filter summary that counts sidebar, filename, host, and status constraints, highlighting nonzero counts without changing the toolbar geometry.
---
renderer/app.js | 15 ++++++++++++--
renderer/i18n.js | 1 +
renderer/index.html | 5 +++++
renderer/styles.css | 36 ++++++++++++++++++++++++++++++++++
tests/i18n.test.js | 1 +
tests/startup-renderer.test.js | 1 +
tests/ui-smoke.js | 7 +++++--
7 files changed, 62 insertions(+), 4 deletions(-)
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
+
+