DioxusLabs / DioxusLabs/dioxus
Plugin use case for Dioxus Desktop
- Dominant language
- Rust
- Stars
- 39.1k
- Forks
- 1.9k
- Avg merge
- 4d 10h
- Merged PRs (30d)
- 4
Description
Fixed by https://github.com/DioxusLabs/dioxus/pull/5169
- We build a Rust add-in/plugin that runs inside an existing Windows application's process.
- We use dioxus-desktop to render UI in a child/embedded window.
- The plugin can be enabled/disabled (loaded/unloaded) at runtime.
Problem
- When the plugin is disabled/unloaded, we shut down the dioxus-desktop event loop (e.g. close the window / post WM_QUIT).
- On Windows, tao::EventLoop::run ultimately calls std::process::exit(...) when the event loop exits.
- This terminates the entire host process, even though the UI/event loop is running on a worker thread.
- Result: disabling/unloading the plugin unexpectedly closes the host application.
Expected
- Shutting down an embedded dioxus-desktop UI should stop only the embedded UI/event-loop thread.
- It must not call std::process::exit or terminate the host process.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.