I removed some defunct properties - this introduced a couple
of problems, which are resolved by:
* no longer checking for fastAutofocusUri
* removing the unused prop availablePlugins from the calibration modal
I've changed tasksubmitter to accept a "thing" and "action" rather than a single URL. This seems more in keeping with
propertyControl, and eliminates the need for loads of
computed properties.
I've also deleted (rather than just commenting out) chunks of the web app that are no longer in use. These may be
reinstated in the future - but we can get them from git
history. It's less confusing not to have vestigial
code in the repo.
This builds OK but is not, as yet, tested with hardware.
Previously, zip files were only downloaded if they already
existed. Now, they are created with an action, then
downloaded from the result.
Chrome now insists on downloading the files as `output.zip`, I can't see why this has changed, but perhaps it's related
to the security warning. This seems to be specific to zip files.
Stitching is now done automatically in a sub process by the
server. This is much cleaner - and all we need to do is poll for
file updates.
I've also styled the log display slightly better.
Python stack traces use spaces and carets to "underline" the
code causing the problem. I've now matched and processed
these lines to add <u> tags.
This necessitated escaping messages and displaying raw HTML
which is now done by `escapeText`.
I fixed a logic error related to the reversing of the list, and
now display multi-line log messages as a single summary line with a "more info" link to expand them.
Expanded log messages show without text wrap - this makes
Python exception traces easier to read.
For extra points, we could even do something cunning, like
process the ^^^ markers into <u>