mirror of
https://github.com/suitenumerique/meet.git
synced 2026-08-16 13:38:35 +00:00
🐛(frontend) fix permission store regression
`derive-valtio` was broken by a recent update, which cascaded into various regressions in the permission store. Take the opportunity to also refactor how permissions are handled. The store is now a pure cache with a single writer: every signal re-reads the browser via `syncPermissions()`, and the browser stays the only source of truth. Re-sync triggers, all event-driven (no polling): * `devicechange`: granting permission reveals device labels/ids, so it fires on grant in every browser, including Safari. This replaces the previous 500ms Safari polling. Denials are still caught by the concurrent `getUserMedia` rejection through `notePermissionDeniedFromGum`. * Window focus: covers the return from the browser or system permission UI. * Permissions API `change` events, where the query is supported.
This commit is contained in:
committed by
aleb_the_flash
parent
5d50671b3c
commit
c8a3ef6f61
@@ -29,7 +29,6 @@
|
||||
"@tanstack/react-query": "5.101.1",
|
||||
"@timephy/rnnoise-wasm": "1.0.0",
|
||||
"crisp-sdk-web": "1.1.2",
|
||||
"derive-valtio": "0.2.0",
|
||||
"hoofd": "1.7.3",
|
||||
"humanize-duration": "3.33.2",
|
||||
"i18next": "26.3.1",
|
||||
|
||||
Reference in New Issue
Block a user