mirror of
https://github.com/slint-ui/slint.git
synced 2025-08-04 02:39:28 +00:00
Fix init callbacks not being invoked for PopupWindow
This commit is contained in:
parent
0cc861550a
commit
a0a5294e49
3 changed files with 56 additions and 1 deletions
|
@ -2255,7 +2255,11 @@ fn compile_builtin_function_call(
|
|||
let window_adapter_tokens = access_window_adapter_field(ctx);
|
||||
quote!(
|
||||
slint::private_unstable_api::re_exports::WindowInner::from_pub(#window_adapter_tokens.window()).show_popup(
|
||||
&VRc::into_dyn(#popup_window_id::new(#component_access_tokens.self_weak.get().unwrap().clone()).into()),
|
||||
&VRc::into_dyn({
|
||||
let instance = #popup_window_id::new(#component_access_tokens.self_weak.get().unwrap().clone());
|
||||
#popup_window_id::user_init(slint::private_unstable_api::re_exports::VRc::map(instance.clone(), |x| x));
|
||||
instance.into()
|
||||
}),
|
||||
Point::new(#x as slint::private_unstable_api::re_exports::Coord, #y as slint::private_unstable_api::re_exports::Coord),
|
||||
#parent_component
|
||||
)
|
||||
|
|
|
@ -26,4 +26,7 @@ pub fn collect_init_code(component: &Rc<Component>) {
|
|||
.push(init_callback.into_inner().expression);
|
||||
}
|
||||
});
|
||||
for popup in component.popup_windows.borrow().iter() {
|
||||
collect_init_code(&popup.component);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue