Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package qt6-webview for openSUSE:Factory checked in at 2024-10-03 18:02:40 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/qt6-webview (Old) and /work/SRC/openSUSE:Factory/.qt6-webview.new.19354 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "qt6-webview" Thu Oct 3 18:02:40 2024 rev:19 rq:1205158 version:6.7.3 Changes: -------- --- /work/SRC/openSUSE:Factory/qt6-webview/qt6-webview.changes 2024-06-24 20:50:40.110550451 +0200 +++ /work/SRC/openSUSE:Factory/.qt6-webview.new.19354/qt6-webview.changes 2024-10-03 18:03:34.390162591 +0200 @@ -1,0 +2,6 @@ +Sat Sep 28 08:23:13 UTC 2024 - Christophe Marin <christo...@krop.fr> + +- Update to 6.7.3 + * https://www.qt.io/blog/qt-6.7.3-released + +------------------------------------------------------------------- Old: ---- qtwebview-everywhere-src-6.7.2.tar.xz New: ---- qtwebview-everywhere-src-6.7.3.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ qt6-webview.spec ++++++ --- /var/tmp/diff_new_pack.gl3gJt/_old 2024-10-03 18:03:34.962186398 +0200 +++ /var/tmp/diff_new_pack.gl3gJt/_new 2024-10-03 18:03:34.966186564 +0200 @@ -16,7 +16,7 @@ # -%define real_version 6.7.2 +%define real_version 6.7.3 %define short_version 6.7 %define tar_name qtwebview-everywhere-src %define tar_suffix %{nil} @@ -27,7 +27,7 @@ %endif # Name: qt6-webview%{?pkg_suffix} -Version: 6.7.2 +Version: 6.7.3 Release: 0 Summary: Qt 6 WebView library License: LGPL-3.0-only OR (GPL-2.0-only OR GPL-3.0-or-later) ++++++ qtwebview-everywhere-src-6.7.2.tar.xz -> qtwebview-everywhere-src-6.7.3.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebview-everywhere-src-6.7.2/.cmake.conf new/qtwebview-everywhere-src-6.7.3/.cmake.conf --- old/qtwebview-everywhere-src-6.7.2/.cmake.conf 2024-06-10 21:19:50.000000000 +0200 +++ new/qtwebview-everywhere-src-6.7.3/.cmake.conf 2024-09-20 04:11:30.000000000 +0200 @@ -1,4 +1,4 @@ -set(QT_REPO_MODULE_VERSION "6.7.2") +set(QT_REPO_MODULE_VERSION "6.7.3") set(QT_REPO_MODULE_PRERELEASE_VERSION_SEGMENT "alpha1") set(QT_EXTRA_INTERNAL_TARGET_DEFINES "QT_NO_AS_CONST=1") list(APPEND QT_EXTRA_INTERNAL_TARGET_DEFINES "QT_NO_FOREACH=1") diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebview-everywhere-src-6.7.2/.tag new/qtwebview-everywhere-src-6.7.3/.tag --- old/qtwebview-everywhere-src-6.7.2/.tag 2024-06-10 21:19:50.000000000 +0200 +++ new/qtwebview-everywhere-src-6.7.3/.tag 2024-09-20 04:11:30.000000000 +0200 @@ -1 +1 @@ -3dbe4104cac53d4f1a3801faa75c75127e5cbaba +94977f0f6222cab08b8906d9d54452fe1d6a324c diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebview-everywhere-src-6.7.2/dependencies.yaml new/qtwebview-everywhere-src-6.7.3/dependencies.yaml --- old/qtwebview-everywhere-src-6.7.2/dependencies.yaml 2024-06-10 21:19:50.000000000 +0200 +++ new/qtwebview-everywhere-src-6.7.3/dependencies.yaml 2024-09-20 04:11:30.000000000 +0200 @@ -1,7 +1,7 @@ dependencies: ../qtdeclarative: - ref: 12533cc0bd83a2076efb4af0bc1832b0db9568fc + ref: 34ffe0c15a9564fefcf01a738eb0bde370399959 required: true ../qtwebengine: - ref: 445cd4e7784d294a3df8ad3f7b85a7a4988c0bbd + ref: d29628dfd9f78da12afe8d6072e8e6358cded301 required: false diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebview-everywhere-src-6.7.2/examples/webview/minibrowser/main.cpp new/qtwebview-everywhere-src-6.7.3/examples/webview/minibrowser/main.cpp --- old/qtwebview-everywhere-src-6.7.2/examples/webview/minibrowser/main.cpp 2024-06-10 21:19:50.000000000 +0200 +++ new/qtwebview-everywhere-src-6.7.3/examples/webview/minibrowser/main.cpp 2024-09-20 04:11:30.000000000 +0200 @@ -11,20 +11,25 @@ #include <QtQml/QQmlContext> #include <QtWebView/QtWebView> +using namespace Qt::StringLiterals; + // Workaround: As of Qt 5.4 QtQuick does not expose QUrl::fromUserInput. -class Utils : public QObject { +class Utils : public QObject +{ Q_OBJECT public: - Utils(QObject *parent = nullptr) : QObject(parent) { } - Q_INVOKABLE static QUrl fromUserInput(const QString& userInput); + using QObject::QObject; + + Q_INVOKABLE static QUrl fromUserInput(const QString &userInput); }; -QUrl Utils::fromUserInput(const QString& userInput) +QUrl Utils::fromUserInput(const QString &userInput) { - if (userInput.isEmpty()) - return QUrl::fromUserInput("about:blank"); - const QUrl result = QUrl::fromUserInput(userInput); - return result.isValid() ? result : QUrl::fromUserInput("about:blank"); + if (!userInput.isEmpty()) { + if (const QUrl result = QUrl::fromUserInput(userInput); result.isValid()) + return result; + } + return QUrl::fromUserInput("about:blank"_L1); } #include "main.moc" @@ -42,17 +47,16 @@ parser.setApplicationDescription(QGuiApplication::applicationDisplayName()); parser.addHelpOption(); parser.addVersionOption(); - parser.addPositionalArgument("url", "The initial URL to open."); - QStringList arguments = app.arguments(); - parser.process(arguments); - const QString initialUrl = parser.positionalArguments().isEmpty() ? - QStringLiteral("https://www.qt.io") : parser.positionalArguments().first(); + parser.addPositionalArgument("url"_L1, "The initial URL to open."_L1); + parser.process(QCoreApplication::arguments()); + const QString initialUrl = parser.positionalArguments().value(0, "https://www.qt.io"_L1); QQmlApplicationEngine engine; QQmlContext *context = engine.rootContext(); - context->setContextProperty(QStringLiteral("utils"), new Utils(&engine)); - context->setContextProperty(QStringLiteral("initialUrl"), + context->setContextProperty("utils"_L1, new Utils(&engine)); + context->setContextProperty("initialUrl"_L1, Utils::fromUserInput(initialUrl)); + QRect geometry = QGuiApplication::primaryScreen()->availableGeometry(); if (!QGuiApplication::styleHints()->showIsFullScreen()) { const QSize size = geometry.size() * 4 / 5; @@ -60,12 +64,13 @@ const QPoint pos = geometry.topLeft() + QPoint(offset.width(), offset.height()); geometry = QRect(pos, size); } - context->setContextProperty(QStringLiteral("initialX"), geometry.x()); - context->setContextProperty(QStringLiteral("initialY"), geometry.y()); - context->setContextProperty(QStringLiteral("initialWidth"), geometry.width()); - context->setContextProperty(QStringLiteral("initialHeight"), geometry.height()); - engine.load(QUrl(QStringLiteral("qrc:/main.qml"))); + engine.setInitialProperties(QVariantMap{{"x"_L1, geometry.x()}, + {"y"_L1, geometry.y()}, + {"width"_L1, geometry.width()}, + {"height"_L1, geometry.height()}}); + + engine.load(QUrl("qrc:/main.qml"_L1)); if (engine.rootObjects().isEmpty()) return -1; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebview-everywhere-src-6.7.2/examples/webview/minibrowser/main.qml new/qtwebview-everywhere-src-6.7.3/examples/webview/minibrowser/main.qml --- old/qtwebview-everywhere-src-6.7.2/examples/webview/minibrowser/main.qml 2024-06-10 21:19:50.000000000 +0200 +++ new/qtwebview-everywhere-src-6.7.3/examples/webview/minibrowser/main.qml 2024-09-20 04:11:30.000000000 +0200 @@ -10,10 +10,6 @@ ApplicationWindow { id: window visible: true - x: initialX - y: initialY - width: initialWidth - height: initialHeight title: webView.title menuBar: ToolBar { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebview-everywhere-src-6.7.2/src/plugins/darwin/qdarwinwebview.mm new/qtwebview-everywhere-src-6.7.3/src/plugins/darwin/qdarwinwebview.mm --- old/qtwebview-everywhere-src-6.7.2/src/plugins/darwin/qdarwinwebview.mm 2024-06-10 21:19:50.000000000 +0200 +++ new/qtwebview-everywhere-src-6.7.3/src/plugins/darwin/qdarwinwebview.mm 2024-09-20 04:11:30.000000000 +0200 @@ -17,6 +17,8 @@ #include <CoreFoundation/CoreFoundation.h> #include <WebKit/WebKit.h> +#include <QtCore/qjsondocument.h> + #ifdef Q_OS_IOS #import <UIKit/UIKit.h> #import <UIKit/UIGestureRecognizerSubclass.h> @@ -528,7 +530,29 @@ if ([result isKindOfClass:[NSDate class]]) return QDateTime::fromNSDate(static_cast<NSDate *>(result)); - // JSValue also supports arrays and dictionaries, but we don't handle that yet + if ([result isKindOfClass:[NSArray class]] + || [result isKindOfClass:[NSDictionary class]]) { + @try { + // Round-trip via JSON, so we don't have to implement conversion + // from NSArray and NSDictionary manually. + + // FIXME: NSJSONSerialization requires that any nested object + // is NSString, NSNumber, NSArray, NSDictionary, or NSNull, so + // nested NSDates are not supported -- meaning we support plain + // NSDate (above), but not in an array or dict. To handle this + // use-case we'd need a manual conversion. + auto jsonData = QByteArray::fromNSData( + [NSJSONSerialization dataWithJSONObject:result options:0 error:nil]); + + QJsonParseError parseError; + auto jsonDocument = QJsonDocument::fromJson(jsonData, &parseError); + if (parseError.error == QJsonParseError::NoError) + return jsonDocument.toVariant(); + } @catch (NSException *) { + return QVariant(); + } + } + return QVariant(); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebview-everywhere-src-6.7.2/tests/auto/qml/qquickwebview/tst_qquickwebview.cpp new/qtwebview-everywhere-src-6.7.3/tests/auto/qml/qquickwebview/tst_qquickwebview.cpp --- old/qtwebview-everywhere-src-6.7.2/tests/auto/qml/qquickwebview/tst_qquickwebview.cpp 2024-06-10 21:19:50.000000000 +0200 +++ new/qtwebview-everywhere-src-6.7.3/tests/auto/qml/qquickwebview/tst_qquickwebview.cpp 2024-09-20 04:11:30.000000000 +0200 @@ -444,7 +444,7 @@ webView()->settings()->setJavaScriptEnabled(jsEnabled); webView()->setUrl(testUrl); QVERIFY(waitForLoadSucceeded(webView())); - QCOMPARE(webView()->title(), expectedTitle); + QTRY_COMPARE(webView()->title(), expectedTitle); webView()->settings()->setJavaScriptEnabled(wasJsEnabled); }