diff options
Diffstat (limited to 'src/browser.cpp')
-rw-r--r-- | src/browser.cpp | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/src/browser.cpp b/src/browser.cpp index bd1f841..25fcf59 100644 --- a/src/browser.cpp +++ b/src/browser.cpp @@ -10,14 +10,15 @@ #include "mainwindow.h" #include "webengine/urlinterceptor.h" #include <QDir> +#include <QtConcurrent> #include <bookmarks/bookmarkswidget.h> #include <downloads/downloadswidget.h> Browser::Browser(int &argc, char *argv[]) : SingleApplication(argc, argv) { - setApplicationName("smolbote"); - setWindowIcon(QIcon(":/icon.svg")); + QApplication::setApplicationName("smolbote"); + QApplication::setWindowIcon(QIcon(":/icon.svg")); connect(this, &Browser::messageAvailable, this, &Browser::createSession); } @@ -25,11 +26,15 @@ Browser::Browser(int &argc, char *argv[]) Browser::~Browser() { if(m_config) { - m_config->writeIfNeeded(); + QtConcurrent::run(QThreadPool::globalInstance(), m_config.get(), &Configuration::writeIfNeeded); + //m_config->writeIfNeeded(); } if(m_bookmarksManager) { - m_bookmarksManager->save(); + QtConcurrent::run(QThreadPool::globalInstance(), m_bookmarksManager.get(), &BookmarksWidget::save); + //m_bookmarksManager->save(); } + + qDebug("Waiting for threads to wind down: %s", QThreadPool::globalInstance()->waitForDone() ? "done" : "failed"); } void Browser::setConfiguration(std::shared_ptr<Configuration> &config) |