diff --git a/src/lib/app/mainapplication.cpp b/src/lib/app/mainapplication.cpp index ac7be56d9..baf6ca0cc 100644 --- a/src/lib/app/mainapplication.cpp +++ b/src/lib/app/mainapplication.cpp @@ -757,7 +757,7 @@ void MainApplication::saveSettings() Settings::syncSettings(); } -void MainApplication::messageReceived(QString message) +void MainApplication::messageReceived(const QString &message) { QWidget* actWin = getWindow(); QUrl actUrl; @@ -791,6 +791,10 @@ void MainApplication::messageReceived(QString message) return; } } + else { + // User attempted to start another instance, let's open a new window + actWin = createWindow(Qz::BW_NewWindow); + } if (!actWin) { if (!isClosing()) { diff --git a/src/lib/app/mainapplication.h b/src/lib/app/mainapplication.h index 6c8fdfbea..1580de1e7 100644 --- a/src/lib/app/mainapplication.h +++ b/src/lib/app/mainapplication.h @@ -126,7 +126,7 @@ private slots: void saveSession(); void saveSettings(); - void messageReceived(QString message); + void messageReceived(const QString &message); void windowDestroyed(QObject* window); private: