Estamos desarrollando una herramienta web para grabar videos de la pantalla y la cámara web de los usuarios.
Algunas personas graban videos grandes de más de una hora. Al usar la API de acceso al sistema de archivos (en Chrome y Edge en Windows), queremos hacer una copia de seguridad del video grabado en un archivo en el sistema de archivos del host en caso de que el navegador o la computadora se bloqueen.
Todo esto funciona como se esperaba, excepto por un efecto secundario al cerrar WritableStream ( WritableStream.close() ). Al cerrar la secuencia, el cursor cambia brevemente en todo el sistema al cursor de Windows "Trabajando en segundo plano".
¿Alguien sabe si hay alguna solución para evitar que Chrome/Edge/Chromium cambie el cursor? Debido a que estamos grabando la pantalla del usuario, un cambio de cursor cada pocos segundos no es aceptable.
Código de ejemplo:
<body> <button onclick="selectDirectory()">Select Directory for Backup</button> <script> async function selectDirectory() { const dirHandle = await window.showDirectoryPicker(); const fileHandle = await dirHandle.getFileHandle('backup.txt', { create: true }); setInterval(async () => { const writable = await fileHandle.createWritable(); await writable.write("Test"); console.log('closing writeable...'); await writable.close(); // at this point the cursor changes }, 1000); } </script> </body>