diff options
Diffstat (limited to 'src/browser.cpp')
-rw-r--r-- | src/browser.cpp | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/src/browser.cpp b/src/browser.cpp index 75f7d50..9bf93e6 100644 --- a/src/browser.cpp +++ b/src/browser.cpp @@ -35,8 +35,10 @@ Browser::Browser(int &argc, char *argv[]) : m_localServer = nullptr; m_networkAccessManager = nullptr; + m_urlRequestInterceptor = nullptr; m_bookmarksManager = nullptr; m_downloadManager = nullptr; + m_blocklistManager = nullptr; } Browser::~Browser() @@ -107,6 +109,7 @@ bool Browser::prepare(QStringList urls) m_networkAccessManager = new QNetworkAccessManager(); m_bookmarksManager = new BookmarksWidget; m_downloadManager = new DownloadsWidget; + m_blocklistManager = new BlockerManager; QtWebEngine::initialize(); @@ -138,6 +141,11 @@ DownloadsWidget *Browser::downloads() return m_downloadManager; } +BlockerManager *Browser::blocklists() +{ + return m_blocklistManager; +} + void Browser::setConfigPath(const QString &path) { // set custom config path if any @@ -203,10 +211,12 @@ WebEngineProfile* Browser::profile(const QString name) m_profiles.insert(name, new WebEngineProfile(name, this)); } - // TODO: UrlRequestInterceptor - // UrlRequestInterceptor *interceptor = new UrlRequestInterceptor(this); - // interceptor->setSubscription(blocklistManager); - // m_profile->setRequestInterceptor(interceptor); + if(!m_urlRequestInterceptor) { + m_urlRequestInterceptor = new UrlRequestInterceptor(this); + m_urlRequestInterceptor->setSubscription(m_blocklistManager); + } + + m_profiles[name]->setRequestInterceptor(m_urlRequestInterceptor); connect(m_profiles[name], SIGNAL(downloadRequested(QWebEngineDownloadItem*)), downloads(), SLOT(addDownload(QWebEngineDownloadItem*))); } |