From 36dce3fd26194cdf6dbf1ba52cc27cfa1daae389 Mon Sep 17 00:00:00 2001 From: Aqua-sama Date: Mon, 27 Aug 2018 16:42:51 +0200 Subject: PluginEditor: implement add plugin action --- src/browser.cpp | 12 ++++++++++++ src/browser.h | 9 ++++++--- 2 files changed, 18 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/browser.cpp b/src/browser.cpp index e248a3f..46e55d2 100644 --- a/src/browser.cpp +++ b/src/browser.cpp @@ -52,6 +52,18 @@ void Browser::about() dlg->exec(); } +QPair Browser::loadProfile(const QString &id) +{ + Q_ASSERT(m_config); + const QDir profilesDir(m_config->value("profile.path").value()); + + auto *profile = ProfileManager::loadProfile(profilesDir.absoluteFilePath(id + ".profile"), m_config->section("profile")); + connect(profile, &WebProfile::downloadRequested, m_downloads.get(), &DownloadsWidget::addDownload); + profile->setRequestInterceptor(m_urlFilter.get()); + + return QPair(id, profile); +} + void Browser::setConfiguration(std::unique_ptr &config) { Q_ASSERT(config); diff --git a/src/browser.h b/src/browser.h index 340a16d..ff84c32 100644 --- a/src/browser.h +++ b/src/browser.h @@ -36,8 +36,13 @@ public slots: void about(); public: - void setConfiguration(std::unique_ptr &config); + // interface Configuration *getConfiguration() const override; + const QVector profiles() const override; + QPair loadProfile(const QString &id) override; + + void setConfiguration(std::unique_ptr &config); + void registerPlugin(const Plugin &plugin); void setup(const QString &defaultProfile); @@ -47,8 +52,6 @@ public: return m_bookmarks; } - const QVector profiles() const override; - public slots: void createSession(const QJsonObject &object); MainWindow *createWindow(); -- cgit v1.2.1