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 2023-10-13 23:14:47 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/qt6-webview (Old) and /work/SRC/openSUSE:Factory/.qt6-webview.new.20540 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "qt6-webview" Fri Oct 13 23:14:47 2023 rev:12 rq:1116965 version:6.6.0 Changes: -------- --- /work/SRC/openSUSE:Factory/qt6-webview/qt6-webview.changes 2023-10-02 20:08:31.107232280 +0200 +++ /work/SRC/openSUSE:Factory/.qt6-webview.new.20540/qt6-webview.changes 2023-10-13 23:15:50.989580540 +0200 @@ -1,0 +2,6 @@ +Tue Oct 10 09:40:04 UTC 2023 - Christophe Marin <christo...@krop.fr> + +- Update to 6.6.0 + * https://www.qt.io/blog/qt-6.6-released + +------------------------------------------------------------------- Old: ---- qtwebview-everywhere-src-6.5.3.tar.xz New: ---- qtwebview-everywhere-src-6.6.0.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ qt6-webview.spec ++++++ --- /var/tmp/diff_new_pack.fIPS28/_old 2023-10-13 23:15:51.585602159 +0200 +++ /var/tmp/diff_new_pack.fIPS28/_new 2023-10-13 23:15:51.585602159 +0200 @@ -16,8 +16,8 @@ # -%define real_version 6.5.3 -%define short_version 6.5 +%define real_version 6.6.0 +%define short_version 6.6 %define tar_name qtwebview-everywhere-src %define tar_suffix %{nil} # @@ -27,7 +27,7 @@ %endif # Name: qt6-webview%{?pkg_suffix} -Version: 6.5.3 +Version: 6.6.0 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.5.3.tar.xz -> qtwebview-everywhere-src-6.6.0.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebview-everywhere-src-6.5.3/.cmake.conf new/qtwebview-everywhere-src-6.6.0/.cmake.conf --- old/qtwebview-everywhere-src-6.5.3/.cmake.conf 2023-09-25 17:30:18.000000000 +0200 +++ new/qtwebview-everywhere-src-6.6.0/.cmake.conf 2023-10-04 06:56:14.000000000 +0200 @@ -1,2 +1,3 @@ -set(QT_REPO_MODULE_VERSION "6.5.3") +set(QT_REPO_MODULE_VERSION "6.6.0") set(QT_REPO_MODULE_PRERELEASE_VERSION_SEGMENT "alpha1") +set(QT_EXTRA_INTERNAL_TARGET_DEFINES "QT_NO_AS_CONST=1") diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebview-everywhere-src-6.5.3/.tag new/qtwebview-everywhere-src-6.6.0/.tag --- old/qtwebview-everywhere-src-6.5.3/.tag 2023-09-25 17:30:18.000000000 +0200 +++ new/qtwebview-everywhere-src-6.6.0/.tag 2023-10-04 06:56:14.000000000 +0200 @@ -1 +1 @@ -f6d9cdfbfd954eac26298f4cf95a7522620b372f +ce7336b811c4cbe45a5e6376881b7ea105408155 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebview-everywhere-src-6.5.3/coin/axivion/ci_config_linux.json new/qtwebview-everywhere-src-6.6.0/coin/axivion/ci_config_linux.json --- old/qtwebview-everywhere-src-6.5.3/coin/axivion/ci_config_linux.json 1970-01-01 01:00:00.000000000 +0100 +++ new/qtwebview-everywhere-src-6.6.0/coin/axivion/ci_config_linux.json 2023-10-04 06:56:14.000000000 +0200 @@ -0,0 +1,60 @@ +{ + "Project": { + "Git": { + "_active": true, + "sourceserver_gitdir": "/data/axivion/databases/$(env:TESTED_MODULE_COIN).git" + }, + "BuildSystemIntegration": { + "child_order": [ + "GCCSetup", + "CMake", + "LinkLibraries" + ] + }, + "CMake": { + "_active": true, + "_copy_from": "CMakeIntegration", + "build_environment": {}, + "build_options": "-j4", + "generate_options": "--fresh", + "generator": "Ninja" + }, + "GCCSetup": { + "_active": true, + "_copy_from": "Command", + "build_command": "gccsetup --cc gcc --cxx g++ --config ../../../axivion/" + }, + "LinkLibraries": { + "_active": true, + "_copy_from": "AxivionLinker", + "input_files": [ + "build/lib/lib*.so*.ir", + "build/qml/*/lib*.so*.ir" + ], + "ir": "build/$(env:TESTED_MODULE_COIN).ir" + }, + "Project-GlobalOptions": { + "directory": "../work/qt/$(env:TESTED_MODULE_COIN)", + "ir": "build/$(env:TESTED_MODULE_COIN).ir", + "name": "qt_$(env:TESTED_MODULE_COIN)_dev_$(env:TARGET_OS_COIN)" + } + }, + "Results": { + "Dashboard": { + "dashboard_url": "https://axivion-srv.ci.qt.io/axivion/" + }, + "Database": { + "ci_mode": { + "directory": "/data/axivion/databases" + } + } + }, + "_Format": "1.0", + "_Version": "trunk-9e0ef9c5818", + "_VersionNum": [ + 7, + 6, + 9999, + 11489 + ] +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebview-everywhere-src-6.5.3/dependencies.yaml new/qtwebview-everywhere-src-6.6.0/dependencies.yaml --- old/qtwebview-everywhere-src-6.5.3/dependencies.yaml 2023-09-25 17:30:18.000000000 +0200 +++ new/qtwebview-everywhere-src-6.6.0/dependencies.yaml 2023-10-04 06:56:14.000000000 +0200 @@ -1,7 +1,7 @@ dependencies: ../qtdeclarative: - ref: e00c258fa5a4e122636d441967dea035865fac5d + ref: e559d5cf2b66c4a973f83f173d57676a21d287ef required: true ../qtwebengine: - ref: 864b08394d1e6d366d7c136ffc50e27adfd08447 + ref: f30957b9ee040f506408267e129ea166d44983dc required: false diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebview-everywhere-src-6.5.3/src/plugins/CMakeLists.txt new/qtwebview-everywhere-src-6.6.0/src/plugins/CMakeLists.txt --- old/qtwebview-everywhere-src-6.5.3/src/plugins/CMakeLists.txt 2023-09-25 17:30:18.000000000 +0200 +++ new/qtwebview-everywhere-src-6.6.0/src/plugins/CMakeLists.txt 2023-10-04 06:56:14.000000000 +0200 @@ -3,9 +3,10 @@ if(ANDROID) add_subdirectory(android) -endif() -if(NOT ANDROID AND (IOS OR MACOS)) +elseif(IOS OR MACOS) add_subdirectory(darwin) +elseif(WASM) + add_subdirectory(wasm) endif() if(WINRT) add_subdirectory(winrt) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebview-everywhere-src-6.5.3/src/plugins/wasm/CMakeLists.txt new/qtwebview-everywhere-src-6.6.0/src/plugins/wasm/CMakeLists.txt --- old/qtwebview-everywhere-src-6.5.3/src/plugins/wasm/CMakeLists.txt 1970-01-01 01:00:00.000000000 +0100 +++ new/qtwebview-everywhere-src-6.6.0/src/plugins/wasm/CMakeLists.txt 2023-10-04 06:56:14.000000000 +0200 @@ -0,0 +1,19 @@ +# Copyright (C) 2023 The Qt Company Ltd. +# SPDX-License-Identifier: BSD-3-Clause + +##################################################################### +## QWasmWebViewPlugin Plugin: +##################################################################### + +qt_internal_add_plugin(QWasmWebViewPlugin + OUTPUT_NAME qtwebview_wasm + PLUGIN_TYPE webview + SOURCES + qwasmwebview.cpp qwasmwebview_p.h + qwasmwebviewplugin.cpp + LIBRARIES + Qt::CorePrivate + Qt::Core + Qt::Gui + Qt::WebViewPrivate +) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebview-everywhere-src-6.5.3/src/plugins/wasm/qwasmwebview.cpp new/qtwebview-everywhere-src-6.6.0/src/plugins/wasm/qwasmwebview.cpp --- old/qtwebview-everywhere-src-6.5.3/src/plugins/wasm/qwasmwebview.cpp 1970-01-01 01:00:00.000000000 +0100 +++ new/qtwebview-everywhere-src-6.6.0/src/plugins/wasm/qwasmwebview.cpp 2023-10-04 06:56:14.000000000 +0200 @@ -0,0 +1,264 @@ +// Copyright (C) 2017 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only + +#include "qwasmwebview_p.h" +#include <private/qwebview_p.h> +#include <private/qwebviewloadrequest_p.h> + +#include <QtCore/qmap.h> +#include <QtGui/qguiapplication.h> +#include <QtCore/qjsondocument.h> +#include <QtCore/qjsonobject.h> +#include <QtCore/qurl.h> +#include <QtCore/qdebug.h> + +#include <QAbstractEventDispatcher> +#include <QThread> + +#include <iostream> + +QT_BEGIN_NAMESPACE + +QWasmWebViewSettingsPrivate::QWasmWebViewSettingsPrivate(QObject *p) : QAbstractWebViewSettings(p) +{ +} + +bool QWasmWebViewSettingsPrivate::localStorageEnabled() const +{ + qWarning("localStorageEnabled() not supported on this platform"); + return false; +} + +bool QWasmWebViewSettingsPrivate::javascriptEnabled() const +{ + qWarning("javascriptEnabled() not supported on this platform"); + return false; +} + +bool QWasmWebViewSettingsPrivate::localContentCanAccessFileUrls() const +{ + qWarning("localContentCanAccessFileUrls() not supported on this platform"); + return false; +} + +bool QWasmWebViewSettingsPrivate::allowFileAccess() const +{ + qWarning("allowFileAccess() not supported on this platform"); + return false; +} + +void QWasmWebViewSettingsPrivate::setLocalContentCanAccessFileUrls(bool enabled) +{ + Q_UNUSED(enabled); + qWarning("setLocalContentCanAccessFileUrls() not supported on this platform"); +} + +void QWasmWebViewSettingsPrivate::setJavascriptEnabled(bool enabled) +{ + Q_UNUSED(enabled); + qWarning("setJavascriptEnabled() not supported on this platform"); +} + +void QWasmWebViewSettingsPrivate::setLocalStorageEnabled(bool enabled) +{ + Q_UNUSED(enabled); + qWarning("setLocalStorageEnabled() not supported on this platform"); +} + +void QWasmWebViewSettingsPrivate::setAllowFileAccess(bool enabled) +{ + Q_UNUSED(enabled); + qWarning("setAllowFileAccess() not supported on this platform"); +} + +QWasmWebViewPrivate::QWasmWebViewPrivate(QObject *p) : QAbstractWebView(p), m_window(0) +{ + m_settings = new QWasmWebViewSettingsPrivate(this); +} + +QWasmWebViewPrivate::~QWasmWebViewPrivate() { } + +QString QWasmWebViewPrivate::httpUserAgent() const +{ + if (m_iframe) + return QString::fromStdString( + (*m_iframe)["contentWindow"]["navigator"]["userAgent"].as<std::string>()); + return QString(); +} + +void QWasmWebViewPrivate::setHttpUserAgent(const QString &userAgent) +{ + Q_UNUSED(userAgent); + qWarning("setHttpUserAgent() not supported on this platform"); +} + +QUrl QWasmWebViewPrivate::url() const +{ + if (m_iframe) + return QUrl(QString::fromStdString( + (*m_iframe)["contentWindow"]["location"]["href"].as<std::string>())); + return QUrl::fromUserInput(""); +} + +void QWasmWebViewPrivate::setUrl(const QUrl &url) +{ + m_currentUrl = url; + if (m_iframe) { + (*m_iframe).call<void>("removeAttribute", emscripten::val("srcdoc")); + (*m_iframe).set("src", m_currentUrl.toString().toStdString()); + } +} + +void QWasmWebViewPrivate::loadHtml(const QString &html, const QUrl &baseUrl) +{ + if (!baseUrl.isEmpty()) + qWarning("Base URLs for loadHtml() are not supported on this platform."); + + if (m_iframe) + (*m_iframe).set("srcdoc", html.toStdString()); +} + +bool QWasmWebViewPrivate::canGoBack() const +{ + qWarning("canGoBack() not supported on this platform"); + return false; +} + +void QWasmWebViewPrivate::goBack() +{ + qWarning("goBack() not supported on this platform"); +} + +bool QWasmWebViewPrivate::canGoForward() const +{ + qWarning("canGoForward() not supported on this platform"); + return false; +} + +void QWasmWebViewPrivate::goForward() +{ + qWarning("goForward() not supported on this platform"); +} + +void QWasmWebViewPrivate::reload() +{ + if (m_iframe) { + (*m_iframe)["contentWindow"]["location"].call<void>("reload"); + setUrl(m_currentUrl); + // this order of operation is important, setting URL before reload() + // did not work, HTTP reload request was being cancelled by browser + } +} + +void QWasmWebViewPrivate::stop() +{ + qWarning("stop() not supported on this platform"); +} + +QString QWasmWebViewPrivate::title() const +{ + if (m_iframe) + return QString::fromStdString( + (*m_iframe)["contentWindow"]["document"]["title"].as<std::string>()); + return QString(); +} + +int QWasmWebViewPrivate::loadProgress() const +{ + qWarning("loadProgress() not supported on this platform"); + return 100; +} + +bool QWasmWebViewPrivate::isLoading() const +{ + qWarning("isLoading() not supported on this platform"); + return false; +} + +void QWasmWebViewPrivate::setParentView(QObject *view) +{ + m_window = qobject_cast<QWindow *>(view); +} + +QObject *QWasmWebViewPrivate::parentView() const +{ + return m_window; +} + +void QWasmWebViewPrivate::setGeometry(const QRect &geometry) +{ + m_geometry = geometry; + updateGeometry(); +} + +void QWasmWebViewPrivate::setVisibility(QWindow::Visibility visibility) +{ + setVisible(visibility != QWindow::Hidden ? true : false); +} + +void QWasmWebViewPrivate::setVisible(bool visible) +{ + if (!m_iframe && m_window && m_window->handle()) + initializeIFrame(); + + if (m_iframe) + (*m_iframe)["style"].set("display", visible ? "block" : "none"); +} + +void QWasmWebViewPrivate::setCookie(const QString &domain, const QString &name, + const QString &value) +{ + Q_UNUSED(domain); + Q_UNUSED(name); + Q_UNUSED(value); + qWarning("setCookie() not supported on this platform"); +} + +void QWasmWebViewPrivate::deleteCookie(const QString &domain, const QString &name) +{ + Q_UNUSED(domain); + Q_UNUSED(name); + qWarning("deleteCookie() not supported on this platform"); +} + +void QWasmWebViewPrivate::deleteAllCookies() +{ + qWarning("deleteAllCookies() not supported on this platform"); +} + +void QWasmWebViewPrivate::runJavaScriptPrivate(const QString &script, int callbackId) +{ + Q_UNUSED(script); + Q_UNUSED(callbackId); + qWarning("runJavaScriptPrivate() not supported on this platform"); +} + +QAbstractWebViewSettings *QWasmWebViewPrivate::getSettings() const +{ + return m_settings; +} + +void QWasmWebViewPrivate::initializeIFrame() +{ + auto m_wasmWindow = dynamic_cast<QNativeInterface::Private::QWasmWindow *>(m_window->handle()); + auto document = m_wasmWindow->document(); + auto clientArea = m_wasmWindow->clientArea(); + + m_iframe = document.call<emscripten::val>("createElement", emscripten::val("iframe")); + clientArea.call<void>("appendChild", *m_iframe); + (*m_iframe)["style"].set("position", "absolute"); + (*m_iframe)["style"].set("border", "none"); + updateGeometry(); +} + +void QWasmWebViewPrivate::updateGeometry() +{ + if (m_iframe && m_geometry) { + (*m_iframe)["style"].set("width", std::to_string(m_geometry->width()) + "px"); + (*m_iframe)["style"].set("height", std::to_string(m_geometry->height()) + "px"); + (*m_iframe)["style"].set("top", std::to_string(m_geometry->top()) + "px"); + (*m_iframe)["style"].set("left", std::to_string(m_geometry->left()) + "px"); + } +} + +QT_END_NAMESPACE diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebview-everywhere-src-6.5.3/src/plugins/wasm/qwasmwebview_p.h new/qtwebview-everywhere-src-6.6.0/src/plugins/wasm/qwasmwebview_p.h --- old/qtwebview-everywhere-src-6.5.3/src/plugins/wasm/qwasmwebview_p.h 1970-01-01 01:00:00.000000000 +0100 +++ new/qtwebview-everywhere-src-6.6.0/src/plugins/wasm/qwasmwebview_p.h 2023-10-04 06:56:14.000000000 +0200 @@ -0,0 +1,100 @@ +// Copyright (C) 2023 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only + +#ifndef QWASMWEBVIEW_P_H +#define QWASMWEBVIEW_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists purely as an +// implementation detail. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include <QtCore/qobject.h> +#include <QtCore/qurl.h> +#include <QtGui/qwindow.h> +#include <QtGui/qpa/qplatformwindow.h> +#include <QtGui/qpa/qplatformwindow_p.h> +#include <emscripten/val.h> + +#include <private/qabstractwebview_p.h> + +#include <optional> + +QT_BEGIN_NAMESPACE + +class QWasmWebViewSettingsPrivate final : public QAbstractWebViewSettings +{ + Q_OBJECT +public: + explicit QWasmWebViewSettingsPrivate(QObject *p = nullptr); + + bool localStorageEnabled() const final; + bool javascriptEnabled() const final; + bool localContentCanAccessFileUrls() const final; + bool allowFileAccess() const final; + +public Q_SLOTS: + void setLocalContentCanAccessFileUrls(bool enabled) final; + void setJavascriptEnabled(bool enabled) final; + void setLocalStorageEnabled(bool enabled) final; + void setAllowFileAccess(bool enabled) final; +}; + +class QWasmWebViewPrivate final : public QAbstractWebView +{ + Q_OBJECT +public: + explicit QWasmWebViewPrivate(QObject *p = nullptr); + ~QWasmWebViewPrivate() override; + + QString httpUserAgent() const final; + void setHttpUserAgent(const QString &httpUserAgent) final; + QUrl url() const final; + void setUrl(const QUrl &url) final; + bool canGoBack() const final; + bool canGoForward() const final; + QString title() const final; + int loadProgress() const final; + bool isLoading() const final; + + void setParentView(QObject *view) final; + QObject *parentView() const final; + void setGeometry(const QRect &geometry) final; + void setVisibility(QWindow::Visibility visibility) final; + void setVisible(bool visible) final; + +public Q_SLOTS: + void goBack() final; + void goForward() final; + void reload() final; + void stop() final; + void loadHtml(const QString &html, const QUrl &baseUrl = QUrl()) final; + void setCookie(const QString &domain, const QString &name, const QString &value) final; + void deleteCookie(const QString &domain, const QString &name) final; + void deleteAllCookies() final; + +protected: + void runJavaScriptPrivate(const QString& script, + int callbackId) final; + QAbstractWebViewSettings *getSettings() const final; + +private: + void initializeIFrame(); + void updateGeometry(); + + QWasmWebViewSettingsPrivate *m_settings; + QWindow *m_window = nullptr; + std::optional<emscripten::val> m_iframe; + std::optional<QRect> m_geometry; + QUrl m_currentUrl; +}; + +QT_END_NAMESPACE + +#endif // QWASMWEBVIEW_P_H diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebview-everywhere-src-6.5.3/src/plugins/wasm/qwasmwebviewplugin.cpp new/qtwebview-everywhere-src-6.6.0/src/plugins/wasm/qwasmwebviewplugin.cpp --- old/qtwebview-everywhere-src-6.5.3/src/plugins/wasm/qwasmwebviewplugin.cpp 1970-01-01 01:00:00.000000000 +0100 +++ new/qtwebview-everywhere-src-6.6.0/src/plugins/wasm/qwasmwebviewplugin.cpp 2023-10-04 06:56:14.000000000 +0200 @@ -0,0 +1,23 @@ +// Copyright (C) 2016 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only + +#include "qwasmwebview_p.h" +#include <private/qwebviewplugin_p.h> + +QT_BEGIN_NAMESPACE + +class QWasmWebViewPlugin : public QWebViewPlugin +{ + Q_OBJECT + Q_PLUGIN_METADATA(IID QWebViewPluginInterface_iid FILE "wasm.json") + +public: + QAbstractWebView *create(const QString &key) const override + { + return key == QLatin1String("webview") ? new QWasmWebViewPrivate() : nullptr; + } +}; + +QT_END_NAMESPACE + +#include "qwasmwebviewplugin.moc" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtwebview-everywhere-src-6.5.3/src/plugins/wasm/wasm.json new/qtwebview-everywhere-src-6.6.0/src/plugins/wasm/wasm.json --- old/qtwebview-everywhere-src-6.5.3/src/plugins/wasm/wasm.json 1970-01-01 01:00:00.000000000 +0100 +++ new/qtwebview-everywhere-src-6.6.0/src/plugins/wasm/wasm.json 2023-10-04 06:56:14.000000000 +0200 @@ -0,0 +1,3 @@ +{ + "Keys": ["native"] +}