diff --git a/libs/ui/source/selector.cpp b/libs/ui/source/selector.cpp index 6041e11b..4fd965b1 100644 --- a/libs/ui/source/selector.cpp +++ b/libs/ui/source/selector.cpp @@ -272,10 +272,11 @@ namespace psemek::ui }; auto patch_callback = [&](struct selector * target){ - target->on_selected([close, cb = target->on_selected()](std::size_t index){ + target->on_selected([target, close, cb = target->on_selected()](std::size_t index){ close(); if (cb) cb(index); + target->on_selected(cb); }); };