Desktop: Final wasm crate #2940
Draft
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR represents the final state of the frontend wasm. It removes the Editor from the wasm when compiling to native, so it will only be merged once we complete the desktop app. The most relevant commit is
Final wasm crate structure
When compiling to web, it creates the editor and runs as it currently does.
When compiling to native, it takes the messages, and forwards them back to JS so they can be accessed by CEF and returned to the main thread.
The request animation frame loop is no longer used to check for autoscrolling and setting the time. Instead,
there is a timer in App.svelte which triggers these messages. This means the editor will have to get the time from the os/js_sys directly.
The only time the request animation frame loop is used is on web to run and poll the node runtime.