Fix Room Asset Download Crash in Firefox By Switching to Blank Navigation
Overview & Context
Downloading a generated whiteboard asset (and any other room asset) currently uses window.location.assign(downloadUrl) in app/src/hooks/useDownloadRoomAsset.ts. In Firefox this triggers a top‑level navigation that unloads the conference. The signaling WebSocket is closed (close code 1001 "Going Away"), the conference crashes
Frontend & UI Requirements
User‑visible behavior must stay the same
Implementation Tasks
- Replace
window.location.assign(downloadUrl)inuseDownloadRoomAsset.tswith a_blanknavigation - Add a regression unit test asserting that
window.location.assignis not called and that the download is opened in a_blankcontext
Definition of Done (DoD)
- Code passes linting and type checks.
- Manual verification successful (tested on Chrome and Firefox; conference WebSocket stays alive after downloading a whiteboard asset).
- Add unit tests
- Add release label after merge