diff --git a/assets/js/main.js b/assets/js/main.js index ff648ab..caf3211 100644 --- a/assets/js/main.js +++ b/assets/js/main.js @@ -181,12 +181,21 @@ document.addEventListener('DOMContentLoaded', function () { } // --- CAMERA & DEVICE MANAGEMENT --- + function resetCameraUI() { + cameraPermissionGranted = false; + sceneCameraDeviceInput.innerHTML = ''; // Clear dropdown + cameraErrorMessage.textContent = ''; // Clear any old errors + cameraDeviceSelection.style.display = 'none'; // Hide device selector + cameraPermissionPrompt.style.display = 'block'; // Show permission button + } + function showCameraUI() { cameraErrorMessage.textContent = ''; if (cameraPermissionGranted) { cameraPermissionPrompt.style.display = 'none'; cameraDeviceSelection.style.display = 'block'; } else { + // This is the initial state, handled by resetCameraUI cameraPermissionPrompt.style.display = 'block'; cameraDeviceSelection.style.display = 'none'; } @@ -289,6 +298,7 @@ document.addEventListener('DOMContentLoaded', function () { }); function showModal() { + resetCameraUI(); // Reset camera state every time modal is opened modal.style.display = 'flex'; sceneNameInput.focus(); sceneTypeSelect.dispatchEvent(new Event('change'));