Destroy desktop integration at correct place

Otherwise it is destructed in QObject destructor, i.e. after GUI application is already destructed.
This can be related to some problems with system tray icon.

PR #18108.
Closes #18093.
This commit is contained in:
Vladimir Golovnev
2022-11-30 20:09:51 +03:00
committed by GitHub
parent 12b58be8c2
commit 25ea0d274b

View File

@@ -706,7 +706,7 @@ try
#ifndef DISABLE_GUI
UIThemeManager::initInstance();
m_desktopIntegration = new DesktopIntegration(this);
m_desktopIntegration = new DesktopIntegration;
m_desktopIntegration->setToolTip(tr("Loading torrents..."));
#ifndef Q_OS_MACOS
auto *desktopIntegrationMenu = new QMenu;
@@ -1201,6 +1201,7 @@ void Application::cleanup()
::ShutdownBlockReasonDestroy(reinterpret_cast<HWND>(m_window->effectiveWinId()));
#endif // Q_OS_WIN
delete m_window;
delete m_desktopIntegration;
UIThemeManager::freeInstance();
}
#endif // DISABLE_GUI