Don't show empty context menu.

This commit is contained in:
John Preston 2022-01-03 14:47:05 +03:00
parent 8d4a658d0b
commit c313cfb4ec
1 changed files with 10 additions and 6 deletions

View File

@ -4454,12 +4454,16 @@ bool OverlayWidget::handleContextMenu(std::optional<QPoint> position) {
const style::icon *icon) {
_menu->addAction(text, std::move(handler), icon);
});
_menu->setDestroyedCallback(crl::guard(_widget, [=] {
activateControls();
_receiveMouse = false;
InvokeQueued(_widget, [=] { receiveMouse(); });
}));
_menu->popup(QCursor::pos());
if (_menu->empty()) {
_menu = nullptr;
} else {
_menu->setDestroyedCallback(crl::guard(_widget, [=] {
activateControls();
_receiveMouse = false;
InvokeQueued(_widget, [=] { receiveMouse(); });
}));
_menu->popup(QCursor::pos());
}
activateControls();
return true;
}