diff --git a/src/blackgui/guiapplication.cpp b/src/blackgui/guiapplication.cpp index e12b5b71f..8f004b82f 100644 --- a/src/blackgui/guiapplication.cpp +++ b/src/blackgui/guiapplication.cpp @@ -221,9 +221,8 @@ namespace BlackGui if (m_uiSetupCompleted) { return; } m_uiSetupCompleted = true; - const QString name(this->getApplicationNameVersionDetailed()); + const QString name = this->setExtraWindowTitle("", mainWidget); mainWidget->setObjectName(QCoreApplication::applicationName()); - mainWidget->setWindowTitle(name); mainWidget->setWindowIcon(m_windowIcon); mainWidget->setWindowIconText(name); CStyleSheetUtility::setQSysInfoProperties(mainWidget, true); @@ -242,13 +241,24 @@ namespace BlackGui } else { + QPointer myself(this); connectOnce(this, &CGuiApplication::uiObjectTreeReady, this, [ = ] { + if (!myself) { return; } this->addWindowFlags(flags); }); } } + QString CGuiApplication::setExtraWindowTitle(const QString &extraInfo, QWidget *mainWindowWidget) const + { + QString name(this->getApplicationNameVersionDetailed()); + if (!extraInfo.isEmpty()) { name = extraInfo % QStringLiteral(" ") % name; } + if (!mainWindowWidget) { return name; } + mainWindowWidget->setWindowTitle(name); + return name; + } + void CGuiApplication::setWindowIcon(const QPixmap &icon) { instance()->m_windowIcon = icon; diff --git a/src/blackgui/guiapplication.h b/src/blackgui/guiapplication.h index c7e37c0c0..3239bc08a 100644 --- a/src/blackgui/guiapplication.h +++ b/src/blackgui/guiapplication.h @@ -122,6 +122,9 @@ namespace BlackGui //! Set window flag on main application window void addWindowFlags(Qt::WindowFlags flags); + //! Set window title + QString setExtraWindowTitle(const QString &extraInfo, QWidget *mainWindowWidget = mainApplicationWidget()) const; + //! \name print messages generated during parsing / cmd handling //! @{ virtual bool cmdLineErrorMessage(const QString &cmdLineErrorMessage, bool retry = false) const override;