diff options
Diffstat (limited to 'tests/quicktestbrowser/main.cpp')
-rw-r--r-- | tests/quicktestbrowser/main.cpp | 28 |
1 files changed, 25 insertions, 3 deletions
diff --git a/tests/quicktestbrowser/main.cpp b/tests/quicktestbrowser/main.cpp index d44f644c3..c81b92794 100644 --- a/tests/quicktestbrowser/main.cpp +++ b/tests/quicktestbrowser/main.cpp @@ -39,7 +39,8 @@ ** ****************************************************************************/ -#include "quickwindow.h" +#include "utils.h" + #ifndef QT_NO_WIDGETS #include <QtWidgets/QApplication> typedef QApplication Application; @@ -47,7 +48,24 @@ typedef QApplication Application; #include <QtGui/QGuiApplication> typedef QGuiApplication Application; #endif -#include <qtwebengineglobal.h> +#include <QtQml/QQmlApplicationEngine> +#include <QtQml/QQmlContext> +#include <QtWebEngine/qtwebengineglobal.h> + +static QUrl startupUrl() +{ + QUrl ret; + QStringList args(qApp->arguments()); + args.takeFirst(); + Q_FOREACH (const QString& arg, args) { + if (arg.startsWith(QLatin1Char('-'))) + continue; + ret = Utils::fromUserInput(arg); + if (ret.isValid()) + return ret; + } + return QUrl(QStringLiteral("http://qt.io/")); +} int main(int argc, char **argv) { @@ -58,7 +76,11 @@ int main(int argc, char **argv) qputenv("QTWEBENGINE_REMOTE_DEBUGGING", "1337"); QtWebEngine::initialize(); - ApplicationEngine appEngine; + QQmlApplicationEngine appEngine; + Utils utils; + appEngine.rootContext()->setContextProperty("utils", &utils); + appEngine.load(QUrl("qrc:/BrowserWindow.qml")); + QMetaObject::invokeMethod(appEngine.rootObjects().first(), "load", Q_ARG(QVariant, startupUrl())); return app.exec(); } |