temporary settings: basic solution for keeping settings in sync between tabs/browsers
Created by: limitedmage
Fixes #24923 (closed)
For unauthenticated users, this fully fixes the sync problems by relying on the storage
event on window
: If another tab changes temporary settings, any other tabs will immediately be notified and update their settings.
For authenticated users, this is implemented by polling every 5 minutes to check if any changes have occurred on the server. This is an initial solution that works on both same-browser and different-browser environments. We may want to improve this in the future through numerous means, such as using service workers or server-sent events/WebSockets; but I think polling is a good initial fix that requires no backend changes.