From eac5673656d7258837801c6e6b531b1a98b1ba63 Mon Sep 17 00:00:00 2001 From: David Rosca Date: Thu, 14 Feb 2019 08:53:27 +0100 Subject: [PATCH] Register custom schemes with QtWebEngine 5.12 --- src/lib/network/networkmanager.cpp | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/lib/network/networkmanager.cpp b/src/lib/network/networkmanager.cpp index ce34ac44a..773e1161d 100644 --- a/src/lib/network/networkmanager.cpp +++ b/src/lib/network/networkmanager.cpp @@ -40,12 +40,29 @@ #include #include #include +#include + +#if QTWEBENGINEWIDGETS_VERSION >= QT_VERSION_CHECK(5, 12, 0) +#include +#endif NetworkManager::NetworkManager(QObject *parent) : QNetworkAccessManager(parent) { // Create scheme handlers m_extensionScheme = new ExtensionSchemeManager(); + +#if QTWEBENGINEWIDGETS_VERSION >= QT_VERSION_CHECK(5, 12, 0) + QWebEngineUrlScheme falkonScheme("falkon"); + falkonScheme.setFlags(QWebEngineUrlScheme::SecureScheme | QWebEngineUrlScheme::ContentSecurityPolicyIgnored); + falkonScheme.setSyntax(QWebEngineUrlScheme::Syntax::Path); + QWebEngineUrlScheme::registerScheme(falkonScheme); + QWebEngineUrlScheme extensionScheme("extension"); + extensionScheme.setFlags(QWebEngineUrlScheme::SecureScheme | QWebEngineUrlScheme::ContentSecurityPolicyIgnored); + extensionScheme.setSyntax(QWebEngineUrlScheme::Syntax::Path); + QWebEngineUrlScheme::registerScheme(extensionScheme); +#endif + mApp->webProfile()->installUrlSchemeHandler(QByteArrayLiteral("falkon"), new FalkonSchemeHandler()); mApp->webProfile()->installUrlSchemeHandler(QByteArrayLiteral("extension"), m_extensionScheme); WebPage::addSupportedScheme(QSL("falkon"));