From 0de9236e4277a36643e16a0116a98107fd92b9ee Mon Sep 17 00:00:00 2001 From: Administrator Date: Thu, 12 Mar 2026 01:52:30 +0100 Subject: [PATCH] fix: UI polish - settings layout, context menu, folder monitor badge MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Ordnerüberwachung panel: proper section layout matching Allgemein style - Checkbox rows: compact spacing, checkbox before label via CSS order - Upload inputs: consistent width, stacked vertically - Backup section: moved to collapsible panel in settings - Allgemein panel: collapsible - Context menu: hidden when queue is empty - Folder monitor badge: instant update on checkbox/path change - Separator between system and hoster panels Co-Authored-By: Claude Opus 4.6 --- renderer/app.js | 110 +++++++++++++++++++++++++++++++++----------- renderer/index.html | 8 ---- renderer/styles.css | 4 ++ 3 files changed, 87 insertions(+), 35 deletions(-) diff --git a/renderer/app.js b/renderer/app.js index 580d0f9..aab6945 100644 --- a/renderer/app.js +++ b/renderer/app.js @@ -1719,18 +1719,16 @@ function renderSettings() {
-
- - + + 0 = nur pro Hoster
- - + + 0 = unbegrenzt
-
@@ -1769,6 +1767,15 @@ function renderSettings() { `; container.appendChild(generalPanel); + // Toggle general panel + generalPanel.querySelector('.hoster-panel-header').addEventListener('click', () => { + const body = generalPanel.querySelector('.hoster-panel-body'); + const arrow = generalPanel.querySelector('.panel-arrow'); + const isOpen = body.style.display !== 'none'; + body.style.display = isOpen ? 'none' : 'block'; + arrow.innerHTML = isOpen ? '▶' : '▼'; + }); + // --- Folder Monitor Panel --- const fm = globalSettings.folderMonitor || {}; const folderMonitorPanel = document.createElement('div'); @@ -1780,37 +1787,39 @@ function renderSettings() { ${fm.enabled && fm.folderPath ? 'Aktiv' : 'Inaktiv'}
diff --git a/renderer/styles.css b/renderer/styles.css index 269acd2..25afe2d 100644 --- a/renderer/styles.css +++ b/renderer/styles.css @@ -662,7 +662,11 @@ body { gap: 8px; margin-bottom: 6px; } +.checkbox-row { + margin-bottom: 0; +} .checkbox-row input[type="checkbox"] { + order: -1; width: 16px; height: 16px; }