dioxus_web/events/
composition.rs

1use dioxus_html::HasCompositionData;
2use web_sys::CompositionEvent;
3
4use super::{Synthetic, WebEventExt};
5
6impl HasCompositionData for Synthetic<CompositionEvent> {
7    fn data(&self) -> std::string::String {
8        self.event.data().unwrap_or_default()
9    }
10
11    fn as_any(&self) -> &dyn std::any::Any {
12        &self.event
13    }
14}
15
16impl WebEventExt for dioxus_html::CompositionData {
17    type WebEvent = web_sys::CompositionEvent;
18
19    #[inline(always)]
20    fn try_as_web_event(&self) -> Option<Self::WebEvent> {
21        self.downcast::<web_sys::CompositionEvent>().cloned()
22    }
23}