PopupMenu::addItem().setAction() issue

The new PopupMenu::Item helper functions, especially the one that lets you set a lambda to be called when you choose a menu item, are pretty cool. However, that lambda is never called if you’re setting the popup menu for a combobox like as follows:

struct Foo
{
    Foo();
private:
    ComboBox cb;
};

Foo::Foo()
{
    int menuID = 1;
    auto* popupMenu = cb.getRootMenu();
    popupMenu->addItem(PopupMenu::Item("test")
                       .setTicked(false)
                       .setAction([this]()
    {
        DBG( "you clicked test" );
    })
                       .setID(menuID++));
    
    cb.setSelectedId(1);  //does not invoke the action
}

I believe way down here in MenuWindow void hide (const PopupMenu::Item* item, bool makeInvisible) is where the action is invoked:

           if (resultID != 0
                 && item != nullptr
                 && item->action != nullptr)
                MessageManager::callAsync (item->action);
        }