@@ -778,20 +778,24 @@ void BitcoinGUI::createTrayIconMenu()
778778
779779 QAction* send_action{nullptr };
780780 QAction* receive_action{nullptr };
781+ QAction* sign_action{nullptr };
782+ QAction* verify_action{nullptr };
781783 if (enableWallet) {
782784 send_action = trayIconMenu->addAction (sendCoinsAction->text (), sendCoinsAction, &QAction::trigger);
783785 receive_action = trayIconMenu->addAction (receiveCoinsAction->text (), receiveCoinsAction, &QAction::trigger);
784786 trayIconMenu->addSeparator ();
785- trayIconMenu->addAction (signMessageAction);
786- trayIconMenu->addAction (verifyMessageAction);
787+ sign_action = trayIconMenu->addAction (signMessageAction-> text (), signMessageAction, &QAction::trigger );
788+ verify_action = trayIconMenu->addAction (verifyMessageAction-> text (), verifyMessageAction, &QAction::trigger );
787789 trayIconMenu->addSeparator ();
788790 }
789- trayIconMenu->addAction (optionsAction);
790- trayIconMenu->addAction (openRPCConsoleAction);
791+ QAction* options_action = trayIconMenu->addAction (optionsAction->text (), optionsAction, &QAction::trigger);
792+ options_action->setMenuRole (QAction::PreferencesRole);
793+ QAction* node_window_action = trayIconMenu->addAction (openRPCConsoleAction->text (), openRPCConsoleAction, &QAction::trigger);
794+ QAction* quit_action{nullptr };
791795#ifndef Q_OS_MAC
792796 // Note: On macOS, the Dock icon's menu already has Quit action.
793797 trayIconMenu->addSeparator ();
794- trayIconMenu->addAction (quitAction);
798+ quit_action = trayIconMenu->addAction (quitAction-> text (), quitAction, &QAction::trigger );
795799
796800 trayIcon->setContextMenu (trayIconMenu.get ());
797801 connect (trayIcon, &QSystemTrayIcon::activated, [this ](QSystemTrayIcon::ActivationReason reason) {
@@ -814,14 +818,16 @@ void BitcoinGUI::createTrayIconMenu()
814818 // Using QSystemTrayIcon::Context is not reliable.
815819 // See https://bugreports.qt.io/browse/QTBUG-91697
816820 trayIconMenu.get (), &QMenu::aboutToShow,
817- [this , show_hide_action, send_action, receive_action] {
821+ [this , show_hide_action, send_action, receive_action, sign_action, verify_action ] {
818822 if (show_hide_action) show_hide_action->setText (
819823 (!isHidden () && !isMinimized () && !GUIUtil::isObscured (this )) ?
820824 tr (" &Hide" ) :
821825 tr (" S&how" ));
822826 if (enableWallet) {
823827 send_action->setEnabled (sendCoinsAction->isEnabled ());
824828 receive_action->setEnabled (receiveCoinsAction->isEnabled ());
829+ sign_action->setEnabled (signMessageAction->isEnabled ());
830+ verify_action->setEnabled (verifyMessageAction->isEnabled ());
825831 }
826832 });
827833}
0 commit comments