#include "browser.h" #include "mainwindow.h" #include Browser::Browser(QString configPath, QObject *parent) : QObject(parent) { // TODO Read Profile m_settings = new QSettings(configPath, QSettings::IniFormat, this); // TODO Restore previous session QtWebEngine::initialize(); } Browser::~Browser() { // TODO Save Profile m_settings->sync(); // TODO Save session // cleanup qDeleteAll(m_windows); m_windows.clear(); } QSettings* Browser::settings() { return m_settings; } QVector Browser::windows() { return m_windows; } void Browser::addWindow(MainWindow *window) { if(m_windows.contains(window)) { return; } m_windows.append(window); connect(window, &QObject::destroyed, [this, window]() { this->removeWindow(window); }); window->show(); } void Browser::removeWindow(MainWindow *window) { m_windows.removeOne(window); }