X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fqtui%2Fmonoapplication.cpp;h=e92afcc68bc36fc07417563141752b929585dfd2;hp=1a8822d61498d4172334175d25ba33dbd97ef3d6;hb=ee8b9f55860e340c1600188fddcfd557c7489f66;hpb=358e5d557d527675c7bc62e58a4c7ad3b408897c diff --git a/src/qtui/monoapplication.cpp b/src/qtui/monoapplication.cpp index 1a8822d6..e92afcc6 100644 --- a/src/qtui/monoapplication.cpp +++ b/src/qtui/monoapplication.cpp @@ -38,10 +38,9 @@ MonolithicApplication::MonolithicApplication(int &argc, char **argv) } -bool MonolithicApplication::init() +void MonolithicApplication::init() { - if (!QtUiApplication::init()) - return false; + QtUiApplication::init(); connect(Client::coreConnection(), SIGNAL(connectToInternalCore(QPointer)), this, SLOT(onConnectionRequest(QPointer))); @@ -51,8 +50,6 @@ bool MonolithicApplication::init() if (Quassel::isOptionSet("port")) { startInternalCore(); } - - return true; } @@ -76,12 +73,15 @@ void MonolithicApplication::startInternalCore() // Start internal core in a separate thread, so it doesn't block the UI _core = new Core{}; _core->moveToThread(&_coreThread); - connect(&_coreThread, SIGNAL(started()), _core, SLOT(init())); + connect(&_coreThread, SIGNAL(started()), _core, SLOT(initAsync())); connect(&_coreThread, SIGNAL(finished()), _core, SLOT(deleteLater())); connect(this, SIGNAL(connectInternalPeer(QPointer)), _core, SLOT(connectInternalPeer(QPointer))); connect(_core, SIGNAL(sessionState(Protocol::SessionState)), Client::coreConnection(), SLOT(internalSessionStateReceived(Protocol::SessionState))); + connect(_core, SIGNAL(dbUpgradeInProgress(bool)), Client::instance(), SLOT(onDbUpgradeInProgress(bool))); + connect(_core, SIGNAL(exitRequested(int,QString)), Client::instance(), SLOT(onExitRequested(int,QString))); + _coreThread.start(); }