diff --git a/sorting_visualization.html b/sorting_visualization.html index d75fee8..ee4254d 100644 --- a/sorting_visualization.html +++ b/sorting_visualization.html @@ -140,13 +140,6 @@ .info-card { padding: 0.75rem !important; } } - /* ── Mobile-first responsive tweaks ── */ - @media (max-width: 640px) { - .stat-desc { display: none; } - .stat-card { padding: 0.5rem !important; } - .info-card { padding: 0.75rem !important; } - } - /* ── Sticky Sidebar (Desktop ≥1024px) ── */ @media (min-width: 1024px) { .app-layout { @@ -179,11 +172,6 @@ .anim-header, .anim-section, .anim-stat { animation: none !important; } } - /* ── Reduced Motion ── */ - @media (prefers-reduced-motion: reduce) { - .anim-header, .anim-section, .anim-stat { animation: none !important; } - } - /* ── Progress Bar ── */ .progress-track { height: 4px; @@ -209,7 +197,7 @@

- Sortier-Algorithmen v0.2.3 + Sortier-Algorithmen v0.2.5

Interaktive Visualisierung mit schrittweiser Animation

@@ -2751,14 +2739,12 @@ function doReset() { // Combined Play/Pause button $btnPlayPause.addEventListener('click', function() { if (isRunning && !isPaused) { - // Currently playing → pause stopTimer(); isPaused = true; updateButtonStates(); return; } if (!isRunning) { - // Not started → start; skip generateArray() if Reset already prepared a fresh array if (!arrayFresh) { generateArray(); } arrayFresh = false; renderCurrent(); @@ -2775,27 +2761,6 @@ $btnPlayPause.addEventListener('click', function() { scheduleNext(); }); -// Step forward -$btnStep.addEventListener('click', function() { - if (!isRunning) { - if (!arrayFresh) { generateArray(); } - arrayFresh = false; - renderCurrent(); - steps = buildSteps($algoSelect.value); - stepIndex = 0; - startTime = 0; - elapsedMs = 0; - setStats(0, 0, 0, 0); - $statTime.textContent = '0 ms'; - isRunning = true; - isPaused = true; - } - isRunning = true; - isPaused = false; - updateButtonStates(); - scheduleNext(); -}); - // Step forward $btnStep.addEventListener('click', function() { if (!isRunning) { @@ -2870,28 +2835,6 @@ $presetSelect.addEventListener('change', function() { writeUrlState(); }); -$sizeSlider.addEventListener('input', function() { - updateSizeLabel(); - if (!isRunning) doReset(); - writeUrlState(); -}); - -$algoSelect.addEventListener('change', function() { - updateThreadSlider(); - if (!isRunning) doReset(); - writeUrlState(); -}); - -$threadSlider.addEventListener('input', function() { - $threadVal.textContent = $threadSlider.value; - if (isRunning && !isPaused) scheduleNext(); -}); - -$presetSelect.addEventListener('change', function() { - if (!isRunning) doReset(); - writeUrlState(); -}); - $customArray.addEventListener('change', function() { if (!isRunning) doReset(); });