ImJoy is now loaded dynamically, and can be turned off with
an environment variable.
I've added two new scripts to develop and build without ImJoy.
I suspect these won't see much use, but
they will remind us how to do it when we
want to release a medical version.
The ImJoy "chunk" is named for ease of separation.
Co-authored-by: Kaspar Emanuel <kaspar@monostable.co.uk>
I was doing nasty things with a for loop - we've replaced it with a
map statement, which achieves the same thing but works better with
Vue.js reactivity.
Each ImJoy window now gets its own top-level tab.
This involved some fairly significant refactoring of the ImJoy
component, but I think it's cleaner now.
I've moved imjoy-related stuff into a store "module" to keep it clean.
something strange is happening with CSS precedence that makes the
elements of the dropdown go white-on-white.
I have added a specific color:black to fix this.
GPU preview and MJPEG stream settings are now persisted
using localStorage. The old code that disabled
the stream for local connections now
just sets the initial/default value.
The initialisation of stream settings is now done
in the created() method of streamContent.vue.
I've eliminated the "globalsafetogglepreview" event
in favour of watching the store.
The test plugin seems to have problems
calling setPosition more than once.
We don't understand this...
Co-authored-by: Kaspar Emanuel <kaspar@monostable.co.uk>
Reset tour button resets the local storage used to mark the tour
as done.
Overriding the origin can now be done with a query string.
This will load the store with the new origin from the start,
so might be better for testing some things.
I'm not worried about unexpected bugs, as it is quite obvious
from the URL what's going on.
Specifying overrideOrigin in the URL now
sets up the store with the modified origin.
This is intended for development, and makes it
much less annoying to develop with a Vue dev server.
I've added buttons to perform the separate calibrations (gain, AWB)
under the full recalibrate link.
It would be really nice to have a modal dialog though.