From d3718b1d86a3edfd1762a9919c203d44f1450315 Mon Sep 17 00:00:00 2001 From: xRangerDE Date: Wed, 4 Feb 2026 15:48:47 +0100 Subject: [PATCH] v3.7.1: Fix update progress bar animation - Add animated indeterminate progress bar during download - Show 100% when download complete - Better status text during update Co-Authored-By: Claude Opus 4.5 --- typescript-version/package.json | 2 +- typescript-version/src/index.html | 31 +++++++++++++++++++++++++++---- typescript-version/src/main.ts | 2 +- 3 files changed, 29 insertions(+), 6 deletions(-) diff --git a/typescript-version/package.json b/typescript-version/package.json index c8b470c..8b0ddbf 100644 --- a/typescript-version/package.json +++ b/typescript-version/package.json @@ -1,6 +1,6 @@ { "name": "twitch-vod-manager", - "version": "3.7.0", + "version": "3.7.1", "description": "Twitch VOD Manager - Download Twitch VODs easily", "main": "dist/main.js", "author": "xRangerDE", diff --git a/typescript-version/src/index.html b/typescript-version/src/index.html index 0c0836c..0d59fc6 100644 --- a/typescript-version/src/index.html +++ b/typescript-version/src/index.html @@ -674,6 +674,22 @@ font-weight: 600; } + .update-banner button:disabled { + opacity: 0.7; + cursor: not-allowed; + } + + #updateProgressBar.downloading { + width: 30% !important; + animation: indeterminate 1.5s ease-in-out infinite; + } + + @keyframes indeterminate { + 0% { margin-left: 0; width: 30%; } + 50% { margin-left: 35%; width: 30%; } + 100% { margin-left: 70%; width: 30%; } + } + /* Video Cutter Styles */ .cutter-container { max-width: 900px; @@ -2156,6 +2172,8 @@ document.getElementById('updateButton').textContent = 'Wird heruntergeladen...'; document.getElementById('updateButton').disabled = true; document.getElementById('updateProgress').style.display = 'block'; + // Start animated progress bar + document.getElementById('updateProgressBar').classList.add('downloading'); window.api.downloadUpdate(); } } @@ -2164,19 +2182,24 @@ window.api.onUpdateAvailable((info) => { document.getElementById('updateBanner').style.display = 'flex'; document.getElementById('updateText').textContent = `Version ${info.version} verfügbar!`; + document.getElementById('updateButton').textContent = 'Jetzt herunterladen'; }); window.api.onUpdateDownloadProgress((progress) => { - document.getElementById('updateProgressBar').style.width = progress.percent + '%'; + const bar = document.getElementById('updateProgressBar'); + bar.classList.remove('downloading'); + bar.style.width = progress.percent + '%'; const mb = (progress.transferred / 1024 / 1024).toFixed(1); const totalMb = (progress.total / 1024 / 1024).toFixed(1); - document.getElementById('updateText').textContent = `Downloading: ${mb} / ${totalMb} MB`; + document.getElementById('updateText').textContent = `Download: ${mb} / ${totalMb} MB (${progress.percent.toFixed(0)}%)`; }); window.api.onUpdateDownloaded((info) => { updateReady = true; - document.getElementById('updateProgress').style.display = 'none'; - document.getElementById('updateText').textContent = `Version ${info.version} bereit!`; + const bar = document.getElementById('updateProgressBar'); + bar.classList.remove('downloading'); + bar.style.width = '100%'; + document.getElementById('updateText').textContent = `Version ${info.version} bereit zur Installation!`; document.getElementById('updateButton').textContent = 'Jetzt installieren'; document.getElementById('updateButton').disabled = false; }); diff --git a/typescript-version/src/main.ts b/typescript-version/src/main.ts index 71f3787..8e10c70 100644 --- a/typescript-version/src/main.ts +++ b/typescript-version/src/main.ts @@ -8,7 +8,7 @@ import { autoUpdater } from 'electron-updater'; // ========================================== // CONFIG & CONSTANTS // ========================================== -const APP_VERSION = '3.7.0'; +const APP_VERSION = '3.7.1'; const UPDATE_CHECK_URL = 'http://24-music.de/version.json'; // Paths