Skip to content

Commit f8994b2

Browse files
authored
fix(event): handle AnyLabel listeners in emit_to (#11581)
closes #11561
1 parent c33bbf4 commit f8994b2

File tree

2 files changed

+30
-1
lines changed

2 files changed

+30
-1
lines changed

.changes/event-anylabel-fix.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"tauri": "patch:bug"
3+
---
4+
5+
Fix listeners created with `EventTarget::AnyLabel` never receiving events.

crates/tauri/src/manager/mod.rs

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -597,7 +597,31 @@ impl<R: Runtime> AppManager<R> {
597597
} => self.emit_filter(event, payload, |t| match t {
598598
EventTarget::Window { label }
599599
| EventTarget::Webview { label }
600-
| EventTarget::WebviewWindow { label } => label == &target_label,
600+
| EventTarget::WebviewWindow { label }
601+
| EventTarget::AnyLabel { label } => label == &target_label,
602+
_ => false,
603+
}),
604+
605+
EventTarget::Window {
606+
label: target_label,
607+
} => self.emit_filter(event, payload, |t| match t {
608+
EventTarget::AnyLabel { label } | EventTarget::Window { label } => label == &target_label,
609+
_ => false,
610+
}),
611+
612+
EventTarget::Webview {
613+
label: target_label,
614+
} => self.emit_filter(event, payload, |t| match t {
615+
EventTarget::AnyLabel { label } | EventTarget::Webview { label } => label == &target_label,
616+
_ => false,
617+
}),
618+
619+
EventTarget::WebviewWindow {
620+
label: target_label,
621+
} => self.emit_filter(event, payload, |t| match t {
622+
EventTarget::AnyLabel { label } | EventTarget::WebviewWindow { label } => {
623+
label == &target_label
624+
}
601625
_ => false,
602626
}),
603627

0 commit comments

Comments
 (0)