This fixes a bunch of small issues in the shell's data controls that have built up while we've been focused on other things:
[x] - Fixes some hanging handlers and async actions left behind by unmounted components that were giving console warnings
[x] - Fixes clickability of file upload and websocket "play" buttons
[x] - Fixes some bugs where the file upload control shows a loaded file when another data type is active
[x] - Stops flashing the home screen on switching data sources
[x] - Adds consistent loading notices while loading all data types
[x] - Cleanly disconnects from an active websocket on choosing another data source
[x] - Makes the active websocket object accessible via useContext
This required quite a lot of refactoring so this is just the "fix" side of this block of work. New UI features building on this like pause / unpause controls and popup error notices will come in the next PR.
This fixes a bunch of small issues in the shell's data controls that have built up while we've been focused on other things:
This required quite a lot of refactoring so this is just the "fix" side of this block of work. New UI features building on this like pause / unpause controls and popup error notices will come in the next PR.