From c313cfb4ec6a459b3e3da29e946c1caa3efda5e2 Mon Sep 17 00:00:00 2001 From: John Preston Date: Mon, 3 Jan 2022 14:47:05 +0300 Subject: [PATCH] Don't show empty context menu. --- .../media/view/media_view_overlay_widget.cpp | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/Telegram/SourceFiles/media/view/media_view_overlay_widget.cpp b/Telegram/SourceFiles/media/view/media_view_overlay_widget.cpp index 8e343df24f..d45eeef2ee 100644 --- a/Telegram/SourceFiles/media/view/media_view_overlay_widget.cpp +++ b/Telegram/SourceFiles/media/view/media_view_overlay_widget.cpp @@ -4454,12 +4454,16 @@ bool OverlayWidget::handleContextMenu(std::optional 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; }