Skip to content

Commit

Permalink
gui: macOS, make appMenuBar part of the main app window
Browse files Browse the repository at this point in the history
By moving the appMenuBar destruction responsibility to the QT
framework, we ensure the disconnection of the submenus signals
prior to the destruction of the main app window.

The standalone menu bar may have served a purpose in earlier
versions when it didn't contain actions that directly open
specific screens within the main application window. However,
at present, all the actions within the appMenuBar lead to the
opening of screens within the main app window. So, the absence
of a main app window makes these actions essentially pointless.
  • Loading branch information
furszy committed Sep 12, 2023
1 parent e14cc8f commit bae209e
Showing 1 changed file with 0 additions and 7 deletions.
7 changes: 0 additions & 7 deletions src/qt/bitcoingui.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -239,7 +239,6 @@ BitcoinGUI::~BitcoinGUI()
trayIcon->hide();
#ifdef Q_OS_MACOS
delete m_app_nap_inhibitor;
delete appMenuBar;
MacDockIconHandler::cleanup();
#endif

Expand Down Expand Up @@ -470,13 +469,7 @@ void BitcoinGUI::createActions()

void BitcoinGUI::createMenuBar()
{
#ifdef Q_OS_MACOS
// Create a decoupled menu bar on Mac which stays even if the window is closed
appMenuBar = new QMenuBar();
#else
// Get the main window's menu bar on other platforms
appMenuBar = menuBar();
#endif

// Configure the menus
QMenu *file = appMenuBar->addMenu(tr("&File"));
Expand Down

0 comments on commit bae209e

Please sign in to comment.