Currently, Annotate uses a basic Python command that runs a CGI server that the webapp can connect to, and that CGI server handles the files.
This is ugly for several reasons:
- Running that Python code requires full access to the system to access the necessary modules.
- The CGI server has a problem where it will read data indefinitely, resulting in the bug documented at
www/js/file_manager.mjs in the action function. (reference commit: 09fd270) This forces the user to wait exactly 1 second each time a file is saved.
- The security is bad.
- The code is only as stable as a Bash script can get.
The most likely replacement would be a QtWebView, unfortunately I am not even remotely familiar enough with Qt to implement the replacement.
I open this issue in the hopes that someone more experienced than me could provide some help there. If someone wants to give it a try, the only modifications needed should be in www/js/file_manager.mjs (and deleting the cgi-bin folder).
Currently, Annotate uses a basic Python command that runs a CGI server that the webapp can connect to, and that CGI server handles the files.
This is ugly for several reasons:
www/js/file_manager.mjsin theactionfunction. (reference commit: 09fd270) This forces the user to wait exactly 1 second each time a file is saved.The most likely replacement would be a QtWebView, unfortunately I am not even remotely familiar enough with Qt to implement the replacement.
I open this issue in the hopes that someone more experienced than me could provide some help there. If someone wants to give it a try, the only modifications needed should be in
www/js/file_manager.mjs(and deleting the cgi-bin folder).