summaryrefslogtreecommitdiffstats
path: root/examples
diff options
context:
space:
mode:
authorKai Koehne <kai.koehne@qt.io>2018-08-29 14:10:36 +0200
committerKai Koehne <kai.koehne@qt.io>2018-09-06 12:09:46 +0000
commit80e2c7a47b51a09247c86b220be4abcf298e3f69 (patch)
tree252d5a951c0f3c3954ee47cdc3fb38ca5c6c9ef7 /examples
parent8ee2e78e4cb9f5f92286a6b2df5e69f1dd8b0a8d (diff)
WebUI example: Reduce duplications
Declare scheme name and about URL in one place. Change-Id: Id8eb69f2a8516dd21e6abedc2adda828a5a9e18c Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
Diffstat (limited to 'examples')
-rw-r--r--examples/webenginewidgets/webui/main.cpp5
-rw-r--r--examples/webenginewidgets/webui/webuihandler.cpp14
-rw-r--r--examples/webenginewidgets/webui/webuihandler.h3
3 files changed, 15 insertions, 7 deletions
diff --git a/examples/webenginewidgets/webui/main.cpp b/examples/webenginewidgets/webui/main.cpp
index 54e0c145c..3e9f61fe4 100644
--- a/examples/webenginewidgets/webui/main.cpp
+++ b/examples/webenginewidgets/webui/main.cpp
@@ -58,6 +58,7 @@
int main(int argc, char *argv[])
{
QApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
+
WebUiHandler::registerUrlScheme();
QApplication app(argc, argv);
@@ -65,10 +66,10 @@ int main(int argc, char *argv[])
QWebEngineProfile profile;
WebUiHandler handler;
- profile.installUrlSchemeHandler(QByteArrayLiteral("webui"), &handler);
+ profile.installUrlSchemeHandler(WebUiHandler::schemeName, &handler);
QWebEnginePage page(&profile);
- page.load(QStringLiteral("webui:about"));
+ page.load(WebUiHandler::aboutUrl);
QWebEngineView view;
view.setPage(&page);
diff --git a/examples/webenginewidgets/webui/webuihandler.cpp b/examples/webenginewidgets/webui/webuihandler.cpp
index 42446b88e..246af9d07 100644
--- a/examples/webenginewidgets/webui/webuihandler.cpp
+++ b/examples/webenginewidgets/webui/webuihandler.cpp
@@ -55,6 +55,11 @@
#include <QWebEngineUrlRequestJob>
#include <QWebEngineUrlScheme>
+#define SCHEMENAME "webui"
+
+const QByteArray WebUiHandler::schemeName = QByteArrayLiteral(SCHEMENAME);
+const QUrl WebUiHandler::aboutUrl = QUrl(QStringLiteral(SCHEMENAME ":about"));
+
WebUiHandler::WebUiHandler(QObject *parent)
: QWebEngineUrlSchemeHandler(parent)
{
@@ -62,8 +67,7 @@ WebUiHandler::WebUiHandler(QObject *parent)
void WebUiHandler::requestStarted(QWebEngineUrlRequestJob *job)
{
- static const QUrl webuiAboutUrl(QStringLiteral("webui:about"));
- static const QUrl webUiOrigin(QStringLiteral("webui:"));
+ static const QUrl webUiOrigin(QStringLiteral(SCHEMENAME ":"));
static const QByteArray GET(QByteArrayLiteral("GET"));
static const QByteArray POST(QByteArrayLiteral("POST"));
@@ -71,11 +75,11 @@ void WebUiHandler::requestStarted(QWebEngineUrlRequestJob *job)
QUrl url = job->requestUrl();
QUrl initiator = job->initiator();
- if (method == GET && url == webuiAboutUrl) {
+ if (method == GET && url == aboutUrl) {
QFile *file = new QFile(QStringLiteral(":/about.html"), job);
file->open(QIODevice::ReadOnly);
job->reply(QByteArrayLiteral("text/html"), file);
- } else if (method == POST && url == webuiAboutUrl && initiator == webUiOrigin) {
+ } else if (method == POST && url == aboutUrl && initiator == webUiOrigin) {
job->fail(QWebEngineUrlRequestJob::RequestAborted);
QApplication::exit();
} else {
@@ -86,7 +90,7 @@ void WebUiHandler::requestStarted(QWebEngineUrlRequestJob *job)
// static
void WebUiHandler::registerUrlScheme()
{
- QWebEngineUrlScheme webUiScheme(QByteArrayLiteral("webui"));
+ QWebEngineUrlScheme webUiScheme(schemeName);
webUiScheme.setFlags(QWebEngineUrlScheme::Secure |
QWebEngineUrlScheme::Local |
QWebEngineUrlScheme::LocalAccessAllowed);
diff --git a/examples/webenginewidgets/webui/webuihandler.h b/examples/webenginewidgets/webui/webuihandler.h
index f9d7b91df..f2ac0dcef 100644
--- a/examples/webenginewidgets/webui/webuihandler.h
+++ b/examples/webenginewidgets/webui/webuihandler.h
@@ -62,6 +62,9 @@ public:
void requestStarted(QWebEngineUrlRequestJob *job) override;
static void registerUrlScheme();
+
+ const static QByteArray schemeName;
+ const static QUrl aboutUrl;
};
#endif // !WEBUIHANDLER_H