fix multiwindow due to mounts not dropping in virtualdom (#4351)

* fix handlers not dropping thanks to mounts

* use `desktop`

* Add tasks and effects

* only destroy on virtualdom destroy

* fix clippy
This commit is contained in:
Jonathan Kelley authored and GitHub committed 2025-07-01 20:49:45 -07:00
1 parent ff762cec84
commit 1db4b2a13d
3 files changed
+16 -7

No files matched your search

+10
View File
@@ -43,10 +43,20 @@ fn app() -> Element {
fn popup(send: Rc<dyn Fn(String)>) -> Element {
let mut user_input = use_signal(String::new);
let window = dioxus::desktop::use_window();
let close_window = move |_| {
println!("Attempting to close Window B");
window.close();
};
rsx! {
div {
h1 { "Compose a new email" }
button {
onclick: close_window,
"Close Window B (button)"
}
button {
onclick: move |_| {
send(user_input.cloned());