diff --git a/Telegram/SourceFiles/ui/widgets/popup_menu.cpp b/Telegram/SourceFiles/ui/widgets/popup_menu.cpp index 4782ca5b5..e56680915 100644 --- a/Telegram/SourceFiles/ui/widgets/popup_menu.cpp +++ b/Telegram/SourceFiles/ui/widgets/popup_menu.cpp @@ -21,6 +21,7 @@ #include "platform/platform_specific.h" #include "application.h" #include "mainwindow.h" +#include "messenger.h" #include "lang/lang_keys.h" namespace Ui { @@ -45,6 +46,12 @@ PopupMenu::PopupMenu(QWidget*, QMenu *menu, const style::PopupMenu &st) : TWidge } void PopupMenu::init() { + subscribe(Messenger::Instance().passcodedChanged(), [this] { + if (App::passcoded()) { + hideMenu(true); + } + }); + _menu->setResizedCallback([this] { handleMenuResize(); }); _menu->setActivatedCallback([this](QAction *action, int actionTop, TriggeredSource source) { handleActivated(action, actionTop, source); diff --git a/Telegram/SourceFiles/ui/widgets/popup_menu.h b/Telegram/SourceFiles/ui/widgets/popup_menu.h index aed4ac201..051e90640 100644 --- a/Telegram/SourceFiles/ui/widgets/popup_menu.h +++ b/Telegram/SourceFiles/ui/widgets/popup_menu.h @@ -23,7 +23,7 @@ namespace Ui { -class PopupMenu : public TWidget { +class PopupMenu : public TWidget, private base::Subscriber { public: PopupMenu(QWidget*, const style::PopupMenu &st = st::defaultPopupMenu); PopupMenu(QWidget*, QMenu *menu, const style::PopupMenu &st = st::defaultPopupMenu);