Fix ui::spawn(selector) destruction order on close

This commit is contained in:
Nikita Lisitsa 2022-03-13 17:20:59 +03:00
parent d1c95ea142
commit c5ca7a3c4f

View file

@ -149,11 +149,11 @@ namespace psemek::ui
positioner->set_child(selector);
auto close = [event_interceptor = event_interceptor.get(), selector = selector.get()]{
selector->on_selected([](std::size_t){});
auto p = dynamic_cast<struct screen *>(event_interceptor->parent());
if (p)
p->remove_child(event_interceptor);
selector->on_selected([](std::size_t){});
};
selector->on_selected([close, cb = std::move(on_selected)](std::size_t index){