Proposal: A new UI for the Wasm port of Mogan

What

Improve the wasm port of Mogan.

  • the UI should behave a bit differently in the browser: single window app, dialogs which opens as subwindow of the main window.

  • in the browser we cannot access the filesystem so many operations should be redesigned to work via download/upload.

  • the application is too big, maybe design a smaller UI and less features, ideally supporting files should be downloaded on demand from a server.

  • use a UI implemented in HTML instead of the current UI implemented via a C/C++ library within a canvas element of the application HTML page.

Why

The browser environment is very different from the Desktop environment. the WASM port running in a browser should have a radically different UI which make fast to startup the app and easy for a non-power user to use. The aim could be to have a minimal app which allow to create documents or view documents on the web.

How

Possibly transform the whole UI to HTML so that it is rendered by the browser and we do not need anymore the Qt code. I’ve started a branch of TeXmacs which does not use Qt for this purpose. It renders the UI via SDL, MuPDF and the internal widget kit of TeXmacs (here https://github.com/texmacs/texmacs/tree/wip_sdl). One could start from there and progressively mirror the UI in the browser via HTML (I have some ideas how to obtain this) until all the UI is migrated to HTML and we can remove Widkit. One can check out the MuPDF web app (here https://mupdf.com/wasm/demo/view.html?file=../../docs/mupdf_explored.pdf) to have an example of such hybrid HTML/JS/WASM app.

1 Like