summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/core/api/qtwebenginecoreglobal.cpp1
-rw-r--r--src/core/api/qtwebenginecoreglobal.h1
-rw-r--r--src/core/api/qtwebenginecoreglobal_p.h1
-rw-r--r--src/core/api/qwebenginecertificateerror.cpp1
-rw-r--r--src/core/api/qwebenginecertificateerror.h1
-rw-r--r--src/core/api/qwebengineclientcertificateselection.cpp1
-rw-r--r--src/core/api/qwebengineclientcertificateselection.h1
-rw-r--r--src/core/api/qwebengineclientcertificatestore.cpp1
-rw-r--r--src/core/api/qwebengineclientcertificatestore.h1
-rw-r--r--src/core/api/qwebengineclienthints.cpp1
-rw-r--r--src/core/api/qwebengineclienthints.h1
-rw-r--r--src/core/api/qwebenginecontextmenurequest.cpp1
-rw-r--r--src/core/api/qwebenginecontextmenurequest.h1
-rw-r--r--src/core/api/qwebenginecontextmenurequest_p.h1
-rw-r--r--src/core/api/qwebenginecookiestore.cpp1
-rw-r--r--src/core/api/qwebenginecookiestore.h1
-rw-r--r--src/core/api/qwebenginecookiestore_p.h1
-rw-r--r--src/core/api/qwebenginedesktopmediarequest.cpp1
-rw-r--r--src/core/api/qwebenginedesktopmediarequest.h1
-rw-r--r--src/core/api/qwebenginedesktopmediarequest_p.h1
-rw-r--r--src/core/api/qwebenginedownloadrequest.cpp1
-rw-r--r--src/core/api/qwebenginedownloadrequest.h1
-rw-r--r--src/core/api/qwebenginedownloadrequest_p.h1
-rw-r--r--src/core/api/qwebengineextensioninfo.cpp1
-rw-r--r--src/core/api/qwebengineextensioninfo.h1
-rw-r--r--src/core/api/qwebengineextensioninfo_p.h1
-rw-r--r--src/core/api/qwebengineextensionmanager.cpp1
-rw-r--r--src/core/api/qwebengineextensionmanager.h1
-rw-r--r--src/core/api/qwebenginefilesystemaccessrequest.cpp1
-rw-r--r--src/core/api/qwebenginefilesystemaccessrequest.h1
-rw-r--r--src/core/api/qwebenginefindtextresult.cpp1
-rw-r--r--src/core/api/qwebenginefindtextresult.h1
-rw-r--r--src/core/api/qwebengineframe.cpp1
-rw-r--r--src/core/api/qwebengineframe.h1
-rw-r--r--src/core/api/qwebenginefullscreenrequest.cpp1
-rw-r--r--src/core/api/qwebenginefullscreenrequest.h1
-rw-r--r--src/core/api/qwebengineglobalsettings.cpp1
-rw-r--r--src/core/api/qwebengineglobalsettings.h1
-rw-r--r--src/core/api/qwebengineglobalsettings_p.h1
-rw-r--r--src/core/api/qwebenginehistory.cpp1
-rw-r--r--src/core/api/qwebenginehistory.h1
-rw-r--r--src/core/api/qwebenginehistory_p.h1
-rw-r--r--src/core/api/qwebenginehttprequest.cpp1
-rw-r--r--src/core/api/qwebenginehttprequest.h1
-rw-r--r--src/core/api/qwebengineloadinginfo.cpp1
-rw-r--r--src/core/api/qwebengineloadinginfo.h1
-rw-r--r--src/core/api/qwebenginemessagepumpscheduler.cpp1
-rw-r--r--src/core/api/qwebenginemessagepumpscheduler_p.h1
-rw-r--r--src/core/api/qwebenginenavigationrequest.cpp1
-rw-r--r--src/core/api/qwebenginenavigationrequest.h1
-rw-r--r--src/core/api/qwebenginenewwindowrequest.cpp1
-rw-r--r--src/core/api/qwebenginenewwindowrequest.h1
-rw-r--r--src/core/api/qwebenginenewwindowrequest_p.h1
-rw-r--r--src/core/api/qwebenginenotification.cpp1
-rw-r--r--src/core/api/qwebenginenotification.h1
-rw-r--r--src/core/api/qwebenginepage.cpp1
-rw-r--r--src/core/api/qwebenginepage.h1
-rw-r--r--src/core/api/qwebenginepage_p.h1
-rw-r--r--src/core/api/qwebenginepermission.cpp1
-rw-r--r--src/core/api/qwebenginepermission.h1
-rw-r--r--src/core/api/qwebenginepermission_p.h1
-rw-r--r--src/core/api/qwebengineprofile.cpp4
-rw-r--r--src/core/api/qwebengineprofile.h4
-rw-r--r--src/core/api/qwebengineprofile_p.h1
-rw-r--r--src/core/api/qwebengineprofilebuilder.cpp1
-rw-r--r--src/core/api/qwebengineprofilebuilder.h1
-rw-r--r--src/core/api/qwebengineprofilebuilder_p.h1
-rw-r--r--src/core/api/qwebenginequotarequest.cpp1
-rw-r--r--src/core/api/qwebenginequotarequest.h1
-rw-r--r--src/core/api/qwebengineregisterprotocolhandlerrequest.cpp1
-rw-r--r--src/core/api/qwebengineregisterprotocolhandlerrequest.h1
-rw-r--r--src/core/api/qwebenginescript.cpp1
-rw-r--r--src/core/api/qwebenginescript.h1
-rw-r--r--src/core/api/qwebenginescriptcollection.cpp1
-rw-r--r--src/core/api/qwebenginescriptcollection.h1
-rw-r--r--src/core/api/qwebenginescriptcollection_p.h1
-rw-r--r--src/core/api/qwebenginesettings.cpp1
-rw-r--r--src/core/api/qwebenginesettings.h1
-rw-r--r--src/core/api/qwebengineurlrequestinfo.cpp1
-rw-r--r--src/core/api/qwebengineurlrequestinfo.h1
-rw-r--r--src/core/api/qwebengineurlrequestinfo_p.h1
-rw-r--r--src/core/api/qwebengineurlrequestinterceptor.cpp1
-rw-r--r--src/core/api/qwebengineurlrequestinterceptor.h1
-rw-r--r--src/core/api/qwebengineurlrequestjob.cpp1
-rw-r--r--src/core/api/qwebengineurlrequestjob.h1
-rw-r--r--src/core/api/qwebengineurlscheme.cpp1
-rw-r--r--src/core/api/qwebengineurlscheme.h1
-rw-r--r--src/core/api/qwebengineurlschemehandler.cpp1
-rw-r--r--src/core/api/qwebengineurlschemehandler.h1
-rw-r--r--src/core/api/qwebenginewebauthuxrequest.cpp1
-rw-r--r--src/core/api/qwebenginewebauthuxrequest.h1
-rw-r--r--src/core/api/qwebenginewebauthuxrequest_p.h1
-rw-r--r--src/core/compositor/compositor.h3
-rw-r--r--src/core/compositor/native_skia_output_device.cpp10
-rw-r--r--src/core/compositor/native_skia_output_device.h1
-rw-r--r--src/core/compositor/native_skia_output_device_opengl.cpp86
-rw-r--r--src/core/compositor/wgl_helper.cpp34
-rw-r--r--src/core/compositor/wgl_helper.h5
-rw-r--r--src/core/doc/src/qtwebengine-overview.qdoc24
-rw-r--r--src/core/profile_adapter.h3
-rw-r--r--src/core/profile_io_data_qt.cpp3
-rw-r--r--src/core/render_widget_host_view_qt_delegate_item.cpp87
-rw-r--r--src/core/render_widget_host_view_qt_delegate_item.h2
-rw-r--r--src/webenginequick/api/qquickwebengineprofile.cpp6
-rw-r--r--src/webenginequick/api/qquickwebengineprofile.h3
-rw-r--r--src/webenginequick/api/qquickwebengineprofileprototype.cpp3
106 files changed, 298 insertions, 70 deletions
diff --git a/src/core/api/qtwebenginecoreglobal.cpp b/src/core/api/qtwebenginecoreglobal.cpp
index 931022931..18da6bd43 100644
--- a/src/core/api/qtwebenginecoreglobal.cpp
+++ b/src/core/api/qtwebenginecoreglobal.cpp
@@ -1,5 +1,6 @@
// Copyright (C) 2021 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
+// Qt-Security score:significant reason:default
#include "qtwebenginecoreglobal_p.h"
diff --git a/src/core/api/qtwebenginecoreglobal.h b/src/core/api/qtwebenginecoreglobal.h
index 0041a72be..8c271de11 100644
--- a/src/core/api/qtwebenginecoreglobal.h
+++ b/src/core/api/qtwebenginecoreglobal.h
@@ -1,5 +1,6 @@
// Copyright (C) 2021 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
+// Qt-Security score:significant reason:default
#ifndef QTWEBENGINECOREGLOBAL_H
#define QTWEBENGINECOREGLOBAL_H
diff --git a/src/core/api/qtwebenginecoreglobal_p.h b/src/core/api/qtwebenginecoreglobal_p.h
index f434e7114..3571754f5 100644
--- a/src/core/api/qtwebenginecoreglobal_p.h
+++ b/src/core/api/qtwebenginecoreglobal_p.h
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:significant reason:default
#ifndef QTWEBENGINECOREGLOBAL_P_H
#define QTWEBENGINECOREGLOBAL_P_H
diff --git a/src/core/api/qwebenginecertificateerror.cpp b/src/core/api/qwebenginecertificateerror.cpp
index 60ec3c95b..e5ea8190e 100644
--- a/src/core/api/qwebenginecertificateerror.cpp
+++ b/src/core/api/qwebenginecertificateerror.cpp
@@ -1,5 +1,6 @@
// Copyright (C) 2021 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
+// Qt-Security score:significant reason:default
#include "qwebenginecertificateerror.h"
diff --git a/src/core/api/qwebenginecertificateerror.h b/src/core/api/qwebenginecertificateerror.h
index 73a3ac090..0021f7506 100644
--- a/src/core/api/qwebenginecertificateerror.h
+++ b/src/core/api/qwebenginecertificateerror.h
@@ -1,5 +1,6 @@
// Copyright (C) 2021 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINECERTIFICATEERROR_H
#define QWEBENGINECERTIFICATEERROR_H
diff --git a/src/core/api/qwebengineclientcertificateselection.cpp b/src/core/api/qwebengineclientcertificateselection.cpp
index d6402353c..da46a67e8 100644
--- a/src/core/api/qwebengineclientcertificateselection.cpp
+++ b/src/core/api/qwebengineclientcertificateselection.cpp
@@ -1,5 +1,6 @@
// Copyright (C) 2018 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
+// Qt-Security score:significant reason:default
#include "qwebengineclientcertificateselection.h"
#include "client_cert_select_controller.h"
diff --git a/src/core/api/qwebengineclientcertificateselection.h b/src/core/api/qwebengineclientcertificateselection.h
index 559d1753b..ccea66731 100644
--- a/src/core/api/qwebengineclientcertificateselection.h
+++ b/src/core/api/qwebengineclientcertificateselection.h
@@ -1,5 +1,6 @@
// Copyright (C) 2018 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINECLIENTCERTSELECTION_H
#define QWEBENGINECLIENTCERTSELECTION_H
diff --git a/src/core/api/qwebengineclientcertificatestore.cpp b/src/core/api/qwebengineclientcertificatestore.cpp
index 3d231c05f..38580768e 100644
--- a/src/core/api/qwebengineclientcertificatestore.cpp
+++ b/src/core/api/qwebengineclientcertificatestore.cpp
@@ -1,5 +1,6 @@
// Copyright (C) 2018 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
+// Qt-Security score:significant reason:default
#include "qwebengineclientcertificatestore.h"
diff --git a/src/core/api/qwebengineclientcertificatestore.h b/src/core/api/qwebengineclientcertificatestore.h
index fcebbe2b1..522d01eeb 100644
--- a/src/core/api/qwebengineclientcertificatestore.h
+++ b/src/core/api/qwebengineclientcertificatestore.h
@@ -1,5 +1,6 @@
// Copyright (C) 2018 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINECLIENTCERTIFICATESTORE_H
#define QWEBENGINECLIENTCERTIFICATESTORE_H
diff --git a/src/core/api/qwebengineclienthints.cpp b/src/core/api/qwebengineclienthints.cpp
index 2f930c181..9560bf835 100644
--- a/src/core/api/qwebengineclienthints.cpp
+++ b/src/core/api/qwebengineclienthints.cpp
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:significant reason:default
#include "qwebengineclienthints.h"
diff --git a/src/core/api/qwebengineclienthints.h b/src/core/api/qwebengineclienthints.h
index 8579b20a9..ef9c59ed9 100644
--- a/src/core/api/qwebengineclienthints.h
+++ b/src/core/api/qwebengineclienthints.h
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINECLIENTHINTS_H
#define QWEBENGINECLIENTHINTS_H
diff --git a/src/core/api/qwebenginecontextmenurequest.cpp b/src/core/api/qwebenginecontextmenurequest.cpp
index 25de1fe6b..00c3c32f1 100644
--- a/src/core/api/qwebenginecontextmenurequest.cpp
+++ b/src/core/api/qwebenginecontextmenurequest.cpp
@@ -1,5 +1,6 @@
// Copyright (C) 2020 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
+// Qt-Security score:significant reason:default
#include "qwebenginecontextmenurequest.h"
#include "qwebenginecontextmenurequest_p.h"
diff --git a/src/core/api/qwebenginecontextmenurequest.h b/src/core/api/qwebenginecontextmenurequest.h
index 6e6f6338c..1d3a2932b 100644
--- a/src/core/api/qwebenginecontextmenurequest.h
+++ b/src/core/api/qwebenginecontextmenurequest.h
@@ -1,5 +1,6 @@
// Copyright (C) 2020 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINECONTEXTMENUREQUEST_H
#define QWEBENGINECONTEXTMENUREQUEST_H
diff --git a/src/core/api/qwebenginecontextmenurequest_p.h b/src/core/api/qwebenginecontextmenurequest_p.h
index 0e774f534..558cc13d5 100644
--- a/src/core/api/qwebenginecontextmenurequest_p.h
+++ b/src/core/api/qwebenginecontextmenurequest_p.h
@@ -1,5 +1,6 @@
// Copyright (C) 2020 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINECONTEXTMENUREQUEST_P_H
#define QWEBENGINECONTEXTMENUREQUEST_P_H
diff --git a/src/core/api/qwebenginecookiestore.cpp b/src/core/api/qwebenginecookiestore.cpp
index 6c4536a4a..49eb47205 100644
--- a/src/core/api/qwebenginecookiestore.cpp
+++ b/src/core/api/qwebenginecookiestore.cpp
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:significant reason:default
#include "qwebenginecookiestore.h"
#include "qwebenginecookiestore_p.h"
diff --git a/src/core/api/qwebenginecookiestore.h b/src/core/api/qwebenginecookiestore.h
index 347d0c45c..ebc0be8e8 100644
--- a/src/core/api/qwebenginecookiestore.h
+++ b/src/core/api/qwebenginecookiestore.h
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINECOOKIESTORE_H
#define QWEBENGINECOOKIESTORE_H
diff --git a/src/core/api/qwebenginecookiestore_p.h b/src/core/api/qwebenginecookiestore_p.h
index 51200436d..1aba0bc52 100644
--- a/src/core/api/qwebenginecookiestore_p.h
+++ b/src/core/api/qwebenginecookiestore_p.h
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINECOOKIESTORE_P_H
#define QWEBENGINECOOKIESTORE_P_H
diff --git a/src/core/api/qwebenginedesktopmediarequest.cpp b/src/core/api/qwebenginedesktopmediarequest.cpp
index 1fdbfa655..d965522bc 100644
--- a/src/core/api/qwebenginedesktopmediarequest.cpp
+++ b/src/core/api/qwebenginedesktopmediarequest.cpp
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:significant reason:default
#include "desktop_media_controller.h"
#include "qwebenginedesktopmediarequest.h"
diff --git a/src/core/api/qwebenginedesktopmediarequest.h b/src/core/api/qwebenginedesktopmediarequest.h
index ebf66bce4..c8cc6d817 100644
--- a/src/core/api/qwebenginedesktopmediarequest.h
+++ b/src/core/api/qwebenginedesktopmediarequest.h
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINEDESKTOPMEDIAREQUEST_H
#define QWEBENGINEDESKTOPMEDIAREQUEST_H
diff --git a/src/core/api/qwebenginedesktopmediarequest_p.h b/src/core/api/qwebenginedesktopmediarequest_p.h
index 3add71bc0..a1e6b8dae 100644
--- a/src/core/api/qwebenginedesktopmediarequest_p.h
+++ b/src/core/api/qwebenginedesktopmediarequest_p.h
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:significant reason:default
//
// W A R N I N G
diff --git a/src/core/api/qwebenginedownloadrequest.cpp b/src/core/api/qwebenginedownloadrequest.cpp
index 536d193b7..2c90d4c94 100644
--- a/src/core/api/qwebenginedownloadrequest.cpp
+++ b/src/core/api/qwebenginedownloadrequest.cpp
@@ -1,5 +1,6 @@
// Copyright (C) 2021 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
+// Qt-Security score:significant reason:default
#include "qwebenginedownloadrequest.h"
#include "qwebenginedownloadrequest_p.h"
diff --git a/src/core/api/qwebenginedownloadrequest.h b/src/core/api/qwebenginedownloadrequest.h
index 36604188e..c64b5cfa4 100644
--- a/src/core/api/qwebenginedownloadrequest.h
+++ b/src/core/api/qwebenginedownloadrequest.h
@@ -1,5 +1,6 @@
// Copyright (C) 2021 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINEDOWNLOADREQUEST_H
#define QWEBENGINEDOWNLOADREQUEST_H
diff --git a/src/core/api/qwebenginedownloadrequest_p.h b/src/core/api/qwebenginedownloadrequest_p.h
index e829f94b1..4e74894a7 100644
--- a/src/core/api/qwebenginedownloadrequest_p.h
+++ b/src/core/api/qwebenginedownloadrequest_p.h
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINEDOWNLOADREQUEST_P_H
#define QWEBENGINEDOWNLOADREQUEST_P_H
diff --git a/src/core/api/qwebengineextensioninfo.cpp b/src/core/api/qwebengineextensioninfo.cpp
index 0a1525a07..2c4731e3a 100644
--- a/src/core/api/qwebengineextensioninfo.cpp
+++ b/src/core/api/qwebengineextensioninfo.cpp
@@ -1,5 +1,6 @@
// Copyright (C) 2025 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
+// Qt-Security score:significant reason:default
#include "qwebengineextensioninfo.h"
#include "qwebengineextensioninfo_p.h"
diff --git a/src/core/api/qwebengineextensioninfo.h b/src/core/api/qwebengineextensioninfo.h
index 5ab02d60e..1c242dcb2 100644
--- a/src/core/api/qwebengineextensioninfo.h
+++ b/src/core/api/qwebengineextensioninfo.h
@@ -1,5 +1,6 @@
// Copyright (C) 2025 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINEEXTENSIONINFO_H_
#define QWEBENGINEEXTENSIONINFO_H_
diff --git a/src/core/api/qwebengineextensioninfo_p.h b/src/core/api/qwebengineextensioninfo_p.h
index 79f505cf8..385395054 100644
--- a/src/core/api/qwebengineextensioninfo_p.h
+++ b/src/core/api/qwebengineextensioninfo_p.h
@@ -1,5 +1,6 @@
// Copyright (C) 2025 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINEEXTENSION_P_H_
#define QWEBENGINEEXTENSION_P_H_
diff --git a/src/core/api/qwebengineextensionmanager.cpp b/src/core/api/qwebengineextensionmanager.cpp
index ed83df5e8..71d3326c3 100644
--- a/src/core/api/qwebengineextensionmanager.cpp
+++ b/src/core/api/qwebengineextensionmanager.cpp
@@ -1,5 +1,6 @@
// Copyright (C) 2025 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
+// Qt-Security score:significant reason:default
#include "qwebengineextensionmanager.h"
diff --git a/src/core/api/qwebengineextensionmanager.h b/src/core/api/qwebengineextensionmanager.h
index a908be97b..15919605d 100644
--- a/src/core/api/qwebengineextensionmanager.h
+++ b/src/core/api/qwebengineextensionmanager.h
@@ -1,5 +1,6 @@
// Copyright (C) 2025 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINEEXTENSIONMANAGER_H_
#define QWEBENGINEEXTENSIONMANAGER_H_
diff --git a/src/core/api/qwebenginefilesystemaccessrequest.cpp b/src/core/api/qwebenginefilesystemaccessrequest.cpp
index 0834468f6..6ef500bfe 100644
--- a/src/core/api/qwebenginefilesystemaccessrequest.cpp
+++ b/src/core/api/qwebenginefilesystemaccessrequest.cpp
@@ -1,5 +1,6 @@
// Copyright (C) 2022 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
+// Qt-Security score:significant reason:default
#include "qwebenginefilesystemaccessrequest.h"
diff --git a/src/core/api/qwebenginefilesystemaccessrequest.h b/src/core/api/qwebenginefilesystemaccessrequest.h
index 7707c607c..b379edf40 100644
--- a/src/core/api/qwebenginefilesystemaccessrequest.h
+++ b/src/core/api/qwebenginefilesystemaccessrequest.h
@@ -1,5 +1,6 @@
// Copyright (C) 2022 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINEFILESYSTEMACCESSREQUEST_H
#define QWEBENGINEFILESYSTEMACCESSREQUEST_H
diff --git a/src/core/api/qwebenginefindtextresult.cpp b/src/core/api/qwebenginefindtextresult.cpp
index ce953ddff..34096f3eb 100644
--- a/src/core/api/qwebenginefindtextresult.cpp
+++ b/src/core/api/qwebenginefindtextresult.cpp
@@ -1,5 +1,6 @@
// Copyright (C) 2021 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
+// Qt-Security score:significant reason:default
#include "qwebenginefindtextresult.h"
diff --git a/src/core/api/qwebenginefindtextresult.h b/src/core/api/qwebenginefindtextresult.h
index d506a50f5..789f11894 100644
--- a/src/core/api/qwebenginefindtextresult.h
+++ b/src/core/api/qwebenginefindtextresult.h
@@ -1,5 +1,6 @@
// Copyright (C) 2021 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINEFINDTEXTRESULT_H
#define QWEBENGINEFINDTEXTRESULT_H
diff --git a/src/core/api/qwebengineframe.cpp b/src/core/api/qwebengineframe.cpp
index 6eb628ffa..fb69ac6b0 100644
--- a/src/core/api/qwebengineframe.cpp
+++ b/src/core/api/qwebengineframe.cpp
@@ -1,5 +1,6 @@
// Copyright (C) 2024 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
+// Qt-Security score:significant reason:default
#include "qwebengineframe.h"
diff --git a/src/core/api/qwebengineframe.h b/src/core/api/qwebengineframe.h
index 02f442f4f..62de87fea 100644
--- a/src/core/api/qwebengineframe.h
+++ b/src/core/api/qwebengineframe.h
@@ -1,5 +1,6 @@
// Copyright (C) 2024 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINEFRAME_H
#define QWEBENGINEFRAME_H
diff --git a/src/core/api/qwebenginefullscreenrequest.cpp b/src/core/api/qwebenginefullscreenrequest.cpp
index ddfaae099..406e27684 100644
--- a/src/core/api/qwebenginefullscreenrequest.cpp
+++ b/src/core/api/qwebenginefullscreenrequest.cpp
@@ -1,5 +1,6 @@
// Copyright (C) 2021 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
+// Qt-Security score:significant reason:default
#include "qwebenginefullscreenrequest.h"
diff --git a/src/core/api/qwebenginefullscreenrequest.h b/src/core/api/qwebenginefullscreenrequest.h
index 07a2b8059..5632e2a7e 100644
--- a/src/core/api/qwebenginefullscreenrequest.h
+++ b/src/core/api/qwebenginefullscreenrequest.h
@@ -1,5 +1,6 @@
// Copyright (C) 2021 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINEFULLSCREENREQUEST_H
#define QWEBENGINEFULLSCREENREQUEST_H
diff --git a/src/core/api/qwebengineglobalsettings.cpp b/src/core/api/qwebengineglobalsettings.cpp
index 6aadd5517..1fef72f15 100644
--- a/src/core/api/qwebengineglobalsettings.cpp
+++ b/src/core/api/qwebengineglobalsettings.cpp
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:critical reason:network-protocol
#include "qwebengineglobalsettings.h"
#include "qwebengineglobalsettings_p.h"
diff --git a/src/core/api/qwebengineglobalsettings.h b/src/core/api/qwebengineglobalsettings.h
index a9eff6d12..f13849a34 100644
--- a/src/core/api/qwebengineglobalsettings.h
+++ b/src/core/api/qwebengineglobalsettings.h
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:critical reason:network-protocol
#ifndef QWEBENGINEGLOBALSETTINGS_H
#define QWEBENGINEGLOBALSETTINGS_H
diff --git a/src/core/api/qwebengineglobalsettings_p.h b/src/core/api/qwebengineglobalsettings_p.h
index 8e35ad68c..28adba677 100644
--- a/src/core/api/qwebengineglobalsettings_p.h
+++ b/src/core/api/qwebengineglobalsettings_p.h
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:critical reason:network-protocol
#ifndef QWEBENGINEGLOBALSETTINGS_P_H
#define QWEBENGINEGLOBALSETTINGS_P_H
diff --git a/src/core/api/qwebenginehistory.cpp b/src/core/api/qwebenginehistory.cpp
index 5d2fc8e9e..a6b44ce61 100644
--- a/src/core/api/qwebenginehistory.cpp
+++ b/src/core/api/qwebenginehistory.cpp
@@ -1,5 +1,6 @@
// Copyright (C) 2021 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
+// Qt-Security score:significant reason:default
#include "qwebenginehistory.h"
#include "qwebenginehistory_p.h"
diff --git a/src/core/api/qwebenginehistory.h b/src/core/api/qwebenginehistory.h
index fd54e62a5..796fb0b6b 100644
--- a/src/core/api/qwebenginehistory.h
+++ b/src/core/api/qwebenginehistory.h
@@ -1,5 +1,6 @@
// Copyright (C) 2021 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINEHISTORY_H
#define QWEBENGINEHISTORY_H
diff --git a/src/core/api/qwebenginehistory_p.h b/src/core/api/qwebenginehistory_p.h
index fe28f4a0e..e4099081b 100644
--- a/src/core/api/qwebenginehistory_p.h
+++ b/src/core/api/qwebenginehistory_p.h
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINEHISTORY_P_H
#define QWEBENGINEHISTORY_P_H
diff --git a/src/core/api/qwebenginehttprequest.cpp b/src/core/api/qwebenginehttprequest.cpp
index 0039533d6..8f6cd07d9 100644
--- a/src/core/api/qwebenginehttprequest.cpp
+++ b/src/core/api/qwebenginehttprequest.cpp
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:critical reason:network-protocol
#include "qplatformdefs.h"
#include <QtCore/qshareddata.h>
diff --git a/src/core/api/qwebenginehttprequest.h b/src/core/api/qwebenginehttprequest.h
index 6c0298f86..3147b8d05 100644
--- a/src/core/api/qwebenginehttprequest.h
+++ b/src/core/api/qwebenginehttprequest.h
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:critical reason:network-protocol
#ifndef QWEBENGINEHTTPREQUEST_H
#define QWEBENGINEHTTPREQUEST_H
diff --git a/src/core/api/qwebengineloadinginfo.cpp b/src/core/api/qwebengineloadinginfo.cpp
index e60c70edb..60e502616 100644
--- a/src/core/api/qwebengineloadinginfo.cpp
+++ b/src/core/api/qwebengineloadinginfo.cpp
@@ -1,5 +1,6 @@
// Copyright (C) 2021 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
+// Qt-Security score:significant reason:default
#include <qwebengineloadinginfo.h>
diff --git a/src/core/api/qwebengineloadinginfo.h b/src/core/api/qwebengineloadinginfo.h
index 098f8936a..8b14983ff 100644
--- a/src/core/api/qwebengineloadinginfo.h
+++ b/src/core/api/qwebengineloadinginfo.h
@@ -1,5 +1,6 @@
// Copyright (C) 2021 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINELOADINGINFO_H
#define QWEBENGINELOADINGINFO_H
diff --git a/src/core/api/qwebenginemessagepumpscheduler.cpp b/src/core/api/qwebenginemessagepumpscheduler.cpp
index 860696c37..1b37b3ac7 100644
--- a/src/core/api/qwebenginemessagepumpscheduler.cpp
+++ b/src/core/api/qwebenginemessagepumpscheduler.cpp
@@ -1,5 +1,6 @@
// Copyright (C) 2019 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
+// Qt-Security score:significant reason:default
#include "qwebenginemessagepumpscheduler_p.h"
diff --git a/src/core/api/qwebenginemessagepumpscheduler_p.h b/src/core/api/qwebenginemessagepumpscheduler_p.h
index b2c51415a..84f21e3aa 100644
--- a/src/core/api/qwebenginemessagepumpscheduler_p.h
+++ b/src/core/api/qwebenginemessagepumpscheduler_p.h
@@ -1,5 +1,6 @@
// Copyright (C) 2019 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINEMESSAGEPUMPSCHEDULER_P_H
#define QWEBENGINEMESSAGEPUMPSCHEDULER_P_H
diff --git a/src/core/api/qwebenginenavigationrequest.cpp b/src/core/api/qwebenginenavigationrequest.cpp
index a83a9289d..4fa00f956 100644
--- a/src/core/api/qwebenginenavigationrequest.cpp
+++ b/src/core/api/qwebenginenavigationrequest.cpp
@@ -1,5 +1,6 @@
// Copyright (C) 2021 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
+// Qt-Security score:significant reason:default
#include "qwebenginenavigationrequest.h"
diff --git a/src/core/api/qwebenginenavigationrequest.h b/src/core/api/qwebenginenavigationrequest.h
index a810a59fe..b4d75e71e 100644
--- a/src/core/api/qwebenginenavigationrequest.h
+++ b/src/core/api/qwebenginenavigationrequest.h
@@ -1,5 +1,6 @@
// Copyright (C) 2021 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINENAVIGATIONREQUEST_H
#define QWEBENGINENAVIGATIONREQUEST_H
diff --git a/src/core/api/qwebenginenewwindowrequest.cpp b/src/core/api/qwebenginenewwindowrequest.cpp
index 500f3ac2b..7f8e62f69 100644
--- a/src/core/api/qwebenginenewwindowrequest.cpp
+++ b/src/core/api/qwebenginenewwindowrequest.cpp
@@ -1,5 +1,6 @@
// Copyright (C) 2021 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
+// Qt-Security score:significant reason:default
#include "qwebenginenewwindowrequest.h"
#include "qwebenginenewwindowrequest_p.h"
diff --git a/src/core/api/qwebenginenewwindowrequest.h b/src/core/api/qwebenginenewwindowrequest.h
index 86d182581..c5b821df0 100644
--- a/src/core/api/qwebenginenewwindowrequest.h
+++ b/src/core/api/qwebenginenewwindowrequest.h
@@ -1,5 +1,6 @@
// Copyright (C) 2021 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINENEWWINDOWREQUEST_H
#define QWEBENGINENEWWINDOWREQUEST_H
diff --git a/src/core/api/qwebenginenewwindowrequest_p.h b/src/core/api/qwebenginenewwindowrequest_p.h
index 979d3fe2d..8e3a45860 100644
--- a/src/core/api/qwebenginenewwindowrequest_p.h
+++ b/src/core/api/qwebenginenewwindowrequest_p.h
@@ -1,5 +1,6 @@
// Copyright (C) 2021 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINENEWWINDOWREQUEST_P_H
#define QWEBENGINENEWWINDOWREQUEST_P_H
diff --git a/src/core/api/qwebenginenotification.cpp b/src/core/api/qwebenginenotification.cpp
index 0c72848c6..7f705dfba 100644
--- a/src/core/api/qwebenginenotification.cpp
+++ b/src/core/api/qwebenginenotification.cpp
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:significant reason:default
#include "qwebenginenotification.h"
diff --git a/src/core/api/qwebenginenotification.h b/src/core/api/qwebenginenotification.h
index 646413d39..99442f0cd 100644
--- a/src/core/api/qwebenginenotification.h
+++ b/src/core/api/qwebenginenotification.h
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINENOTIFICATION_H
#define QWEBENGINENOTIFICATION_H
diff --git a/src/core/api/qwebenginepage.cpp b/src/core/api/qwebenginepage.cpp
index cfc549ecc..bfa184e5c 100644
--- a/src/core/api/qwebenginepage.cpp
+++ b/src/core/api/qwebenginepage.cpp
@@ -1,5 +1,6 @@
// Copyright (C) 2021 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
+// Qt-Security score:significant reason:default
#include "qwebenginepage.h"
#include "authenticator_request_dialog_controller.h"
diff --git a/src/core/api/qwebenginepage.h b/src/core/api/qwebenginepage.h
index ada0af9da..9bee1f98e 100644
--- a/src/core/api/qwebenginepage.h
+++ b/src/core/api/qwebenginepage.h
@@ -1,5 +1,6 @@
// Copyright (C) 2021 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINEPAGE_H
#define QWEBENGINEPAGE_H
diff --git a/src/core/api/qwebenginepage_p.h b/src/core/api/qwebenginepage_p.h
index 5e81a0cf9..76b4a4d9d 100644
--- a/src/core/api/qwebenginepage_p.h
+++ b/src/core/api/qwebenginepage_p.h
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINEPAGE_P_H
#define QWEBENGINEPAGE_P_H
diff --git a/src/core/api/qwebenginepermission.cpp b/src/core/api/qwebenginepermission.cpp
index 5fa1ed484..ec62f0e4c 100644
--- a/src/core/api/qwebenginepermission.cpp
+++ b/src/core/api/qwebenginepermission.cpp
@@ -1,5 +1,6 @@
// Copyright (C) 2024 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
+// Qt-Security score:significant reason:default
#include "qwebenginepermission.h"
#include "qwebenginepermission_p.h"
diff --git a/src/core/api/qwebenginepermission.h b/src/core/api/qwebenginepermission.h
index 476c8bdd4..9a62320bf 100644
--- a/src/core/api/qwebenginepermission.h
+++ b/src/core/api/qwebenginepermission.h
@@ -1,5 +1,6 @@
// Copyright (C) 2024 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINEPERMISSION_H
#define QWEBENGINEPERMISSION_H
diff --git a/src/core/api/qwebenginepermission_p.h b/src/core/api/qwebenginepermission_p.h
index fe4dc62f8..c6b525b31 100644
--- a/src/core/api/qwebenginepermission_p.h
+++ b/src/core/api/qwebenginepermission_p.h
@@ -1,5 +1,6 @@
// Copyright (C) 2024 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINEPERMISSION_P_H
#define QWEBENGINEPERMISSION_P_H
diff --git a/src/core/api/qwebengineprofile.cpp b/src/core/api/qwebengineprofile.cpp
index 5b523dd87..b6c308cf6 100644
--- a/src/core/api/qwebengineprofile.cpp
+++ b/src/core/api/qwebengineprofile.cpp
@@ -1,5 +1,6 @@
// Copyright (C) 2021 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
+// Qt-Security score:critical reason:network-protocol
#include "qwebengineprofile.h"
#include "qwebengineprofile_p.h"
@@ -103,6 +104,9 @@ using QtWebEngineCore::ProfileAdapter;
\value AllowPersistentCookies
Cookies marked persistent are saved to and restored from disk, whereas session cookies
are only stored to disk for crash recovery. This is the default setting.
+ \value OnlyPersistentCookies
+ Cookies marked persistent are saved to and restored from disk, whereas session cookies
+ are not stored to disk, even for crash recovery.
\value ForcePersistentCookies
Both session and persistent cookies are saved to and restored from disk.
*/
diff --git a/src/core/api/qwebengineprofile.h b/src/core/api/qwebengineprofile.h
index fe00e6f5d..f30c9fc82 100644
--- a/src/core/api/qwebengineprofile.h
+++ b/src/core/api/qwebengineprofile.h
@@ -1,5 +1,6 @@
// Copyright (C) 2021 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
+// Qt-Security score:critical reason:network-protocol
#ifndef QWEBENGINEPROFILE_H
#define QWEBENGINEPROFILE_H
@@ -48,7 +49,8 @@ public:
enum PersistentCookiesPolicy {
NoPersistentCookies,
AllowPersistentCookies,
- ForcePersistentCookies
+ ForcePersistentCookies,
+ OnlyPersistentCookies,
};
Q_ENUM(PersistentCookiesPolicy)
diff --git a/src/core/api/qwebengineprofile_p.h b/src/core/api/qwebengineprofile_p.h
index d4b3513cd..c814c79aa 100644
--- a/src/core/api/qwebengineprofile_p.h
+++ b/src/core/api/qwebengineprofile_p.h
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:critical reason:network-protocol
#ifndef QWEBENGINEPROFILE_P_H
#define QWEBENGINEPROFILE_P_H
diff --git a/src/core/api/qwebengineprofilebuilder.cpp b/src/core/api/qwebengineprofilebuilder.cpp
index 9adc12dac..f8a6cae7c 100644
--- a/src/core/api/qwebengineprofilebuilder.cpp
+++ b/src/core/api/qwebengineprofilebuilder.cpp
@@ -1,5 +1,6 @@
// Copyright (C) 2024 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
+// Qt-Security score:critical reason:data-parser
#include "qwebengineprofilebuilder.h"
#include "qwebengineprofile_p.h"
diff --git a/src/core/api/qwebengineprofilebuilder.h b/src/core/api/qwebengineprofilebuilder.h
index 1a03d3aa1..bbbb46b65 100644
--- a/src/core/api/qwebengineprofilebuilder.h
+++ b/src/core/api/qwebengineprofilebuilder.h
@@ -1,5 +1,6 @@
// Copyright (C) 2024 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
+// Qt-Security score:critical reason:data-parser
#ifndef QWEBENGINEPROFILEBUILDER_H
#define QWEBENGINEPROFILEBUILDER_H
diff --git a/src/core/api/qwebengineprofilebuilder_p.h b/src/core/api/qwebengineprofilebuilder_p.h
index a0750d47a..a9b6793b2 100644
--- a/src/core/api/qwebengineprofilebuilder_p.h
+++ b/src/core/api/qwebengineprofilebuilder_p.h
@@ -1,5 +1,6 @@
// Copyright (C) 2024 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
+// Qt-Security score:critical reason:data-parser
#ifndef QWEBENGINEPROFILEBUILDER_P_H
#define QWEBENGINEPROFILEBUILDER_P_H
diff --git a/src/core/api/qwebenginequotarequest.cpp b/src/core/api/qwebenginequotarequest.cpp
index 3c312216d..ea3a0c6f4 100644
--- a/src/core/api/qwebenginequotarequest.cpp
+++ b/src/core/api/qwebenginequotarequest.cpp
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:significant reason:default
#include "qwebenginequotarequest.h"
diff --git a/src/core/api/qwebenginequotarequest.h b/src/core/api/qwebenginequotarequest.h
index f542f5576..15f1dc06a 100644
--- a/src/core/api/qwebenginequotarequest.h
+++ b/src/core/api/qwebenginequotarequest.h
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINEQUOTAREQUEST_H
#define QWEBENGINEQUOTAREQUEST_H
diff --git a/src/core/api/qwebengineregisterprotocolhandlerrequest.cpp b/src/core/api/qwebengineregisterprotocolhandlerrequest.cpp
index 3e52302e4..733f90349 100644
--- a/src/core/api/qwebengineregisterprotocolhandlerrequest.cpp
+++ b/src/core/api/qwebengineregisterprotocolhandlerrequest.cpp
@@ -1,5 +1,6 @@
// Copyright (C) 2018 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
+// Qt-Security score:significant reason:default
#include "qwebengineregisterprotocolhandlerrequest.h"
diff --git a/src/core/api/qwebengineregisterprotocolhandlerrequest.h b/src/core/api/qwebengineregisterprotocolhandlerrequest.h
index d6e51695e..71137a6fd 100644
--- a/src/core/api/qwebengineregisterprotocolhandlerrequest.h
+++ b/src/core/api/qwebengineregisterprotocolhandlerrequest.h
@@ -1,5 +1,6 @@
// Copyright (C) 2018 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINEREGISTERPROTOCOLHANDLERREQUEST_H
#define QWEBENGINEREGISTERPROTOCOLHANDLERREQUEST_H
diff --git a/src/core/api/qwebenginescript.cpp b/src/core/api/qwebenginescript.cpp
index 83a790b65..919556fd9 100644
--- a/src/core/api/qwebenginescript.cpp
+++ b/src/core/api/qwebenginescript.cpp
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:significant reason:default
#include "qwebenginescript.h"
diff --git a/src/core/api/qwebenginescript.h b/src/core/api/qwebenginescript.h
index 9827c4879..daaffdb11 100644
--- a/src/core/api/qwebenginescript.h
+++ b/src/core/api/qwebenginescript.h
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINESCRIPT_H
#define QWEBENGINESCRIPT_H
diff --git a/src/core/api/qwebenginescriptcollection.cpp b/src/core/api/qwebenginescriptcollection.cpp
index 7867192b6..17760a84e 100644
--- a/src/core/api/qwebenginescriptcollection.cpp
+++ b/src/core/api/qwebenginescriptcollection.cpp
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:significant reason:default
#include "qwebenginescriptcollection.h"
#include "qwebenginescriptcollection_p.h"
diff --git a/src/core/api/qwebenginescriptcollection.h b/src/core/api/qwebenginescriptcollection.h
index a3b3c1c08..a2733f99a 100644
--- a/src/core/api/qwebenginescriptcollection.h
+++ b/src/core/api/qwebenginescriptcollection.h
@@ -1,5 +1,6 @@
// Copyright (C) 2020 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINESCRIPTCOLLECTION_H
#define QWEBENGINESCRIPTCOLLECTION_H
diff --git a/src/core/api/qwebenginescriptcollection_p.h b/src/core/api/qwebenginescriptcollection_p.h
index 67b3aa4a7..87d25b7a8 100644
--- a/src/core/api/qwebenginescriptcollection_p.h
+++ b/src/core/api/qwebenginescriptcollection_p.h
@@ -1,5 +1,6 @@
// Copyright (C) 2020 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINESCRIPTCOLLECTION_P_H
#define QWEBENGINESCRIPTCOLLECTION_P_H
diff --git a/src/core/api/qwebenginesettings.cpp b/src/core/api/qwebenginesettings.cpp
index a7ae80cd1..98d379069 100644
--- a/src/core/api/qwebenginesettings.cpp
+++ b/src/core/api/qwebenginesettings.cpp
@@ -1,5 +1,6 @@
// Copyright (C) 2020 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
+// Qt-Security score:significant reason:default
#include "qwebenginesettings.h"
#include "web_engine_settings.h"
diff --git a/src/core/api/qwebenginesettings.h b/src/core/api/qwebenginesettings.h
index 415d4176a..de85fbfbc 100644
--- a/src/core/api/qwebenginesettings.h
+++ b/src/core/api/qwebenginesettings.h
@@ -1,5 +1,6 @@
// Copyright (C) 2022 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINESETTINGS_H
#define QWEBENGINESETTINGS_H
diff --git a/src/core/api/qwebengineurlrequestinfo.cpp b/src/core/api/qwebengineurlrequestinfo.cpp
index 85362c500..6b6732583 100644
--- a/src/core/api/qwebengineurlrequestinfo.cpp
+++ b/src/core/api/qwebengineurlrequestinfo.cpp
@@ -1,5 +1,6 @@
// Copyright (C) 2019 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
+// Qt-Security score:critical reason:network-protocol
#include "qwebengineurlrequestinfo.h"
#include "qwebengineurlrequestinfo_p.h"
diff --git a/src/core/api/qwebengineurlrequestinfo.h b/src/core/api/qwebengineurlrequestinfo.h
index 7f73cc0a1..6e4d279b5 100644
--- a/src/core/api/qwebengineurlrequestinfo.h
+++ b/src/core/api/qwebengineurlrequestinfo.h
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:critical reason:network-protocol
#ifndef QWEBENGINEURLREQUESTINFO_H
#define QWEBENGINEURLREQUESTINFO_H
diff --git a/src/core/api/qwebengineurlrequestinfo_p.h b/src/core/api/qwebengineurlrequestinfo_p.h
index b6d56e99c..ef98c91d9 100644
--- a/src/core/api/qwebengineurlrequestinfo_p.h
+++ b/src/core/api/qwebengineurlrequestinfo_p.h
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:critical reason:network-protocol
#ifndef QWEBENGINEURLREQUESTINFO_P_H
#define QWEBENGINEURLREQUESTINFO_P_H
diff --git a/src/core/api/qwebengineurlrequestinterceptor.cpp b/src/core/api/qwebengineurlrequestinterceptor.cpp
index c3cd49a5b..3a34b3e88 100644
--- a/src/core/api/qwebengineurlrequestinterceptor.cpp
+++ b/src/core/api/qwebengineurlrequestinterceptor.cpp
@@ -1,5 +1,6 @@
// Copyright (C) 2021 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
+// Qt-Security score:significant reason:default
#include "qwebengineurlrequestinterceptor.h"
diff --git a/src/core/api/qwebengineurlrequestinterceptor.h b/src/core/api/qwebengineurlrequestinterceptor.h
index 2ca8ee914..49bac4244 100644
--- a/src/core/api/qwebengineurlrequestinterceptor.h
+++ b/src/core/api/qwebengineurlrequestinterceptor.h
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENINGEURLREQUESTINTERCEPTOR_H
#define QWEBENINGEURLREQUESTINTERCEPTOR_H
diff --git a/src/core/api/qwebengineurlrequestjob.cpp b/src/core/api/qwebengineurlrequestjob.cpp
index 6ef94e41d..7e0ec9c97 100644
--- a/src/core/api/qwebengineurlrequestjob.cpp
+++ b/src/core/api/qwebengineurlrequestjob.cpp
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:significant reason:default
#include "qwebengineurlrequestjob.h"
diff --git a/src/core/api/qwebengineurlrequestjob.h b/src/core/api/qwebengineurlrequestjob.h
index 8448efdef..b836c877b 100644
--- a/src/core/api/qwebengineurlrequestjob.h
+++ b/src/core/api/qwebengineurlrequestjob.h
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINEURLREQUESTJOB_H
#define QWEBENGINEURLREQUESTJOB_H
diff --git a/src/core/api/qwebengineurlscheme.cpp b/src/core/api/qwebengineurlscheme.cpp
index d2ca56f62..36fd3a286 100644
--- a/src/core/api/qwebengineurlscheme.cpp
+++ b/src/core/api/qwebengineurlscheme.cpp
@@ -1,5 +1,6 @@
// Copyright (C) 2018 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
+// Qt-Security score:critical reason:data-parser
#include "qwebengineurlscheme.h"
diff --git a/src/core/api/qwebengineurlscheme.h b/src/core/api/qwebengineurlscheme.h
index 35498a68e..9e33eeceb 100644
--- a/src/core/api/qwebengineurlscheme.h
+++ b/src/core/api/qwebengineurlscheme.h
@@ -1,5 +1,6 @@
// Copyright (C) 2018 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
+// Qt-Security score:critical reason:network-protocol
#ifndef QWEBENGINEURLSCHEME_H
#define QWEBENGINEURLSCHEME_H
diff --git a/src/core/api/qwebengineurlschemehandler.cpp b/src/core/api/qwebengineurlschemehandler.cpp
index 7aeaec850..27b5c46cc 100644
--- a/src/core/api/qwebengineurlschemehandler.cpp
+++ b/src/core/api/qwebengineurlschemehandler.cpp
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:significant reason:default
#include "qwebengineurlschemehandler.h"
diff --git a/src/core/api/qwebengineurlschemehandler.h b/src/core/api/qwebengineurlschemehandler.h
index 848904719..4ce2acd7c 100644
--- a/src/core/api/qwebengineurlschemehandler.h
+++ b/src/core/api/qwebengineurlschemehandler.h
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINEURLSCHEMEHANDLER_H
#define QWEBENGINEURLSCHEMEHANDLER_H
diff --git a/src/core/api/qwebenginewebauthuxrequest.cpp b/src/core/api/qwebenginewebauthuxrequest.cpp
index b22e37942..a7aae9188 100644
--- a/src/core/api/qwebenginewebauthuxrequest.cpp
+++ b/src/core/api/qwebenginewebauthuxrequest.cpp
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:significant reason:default
#include "qwebenginewebauthuxrequest.h"
#include "qwebenginewebauthuxrequest_p.h"
diff --git a/src/core/api/qwebenginewebauthuxrequest.h b/src/core/api/qwebenginewebauthuxrequest.h
index 111f52847..ff7d8bf7b 100644
--- a/src/core/api/qwebenginewebauthuxrequest.h
+++ b/src/core/api/qwebenginewebauthuxrequest.h
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINEWEBAUTHUXREQUEST_H
#define QWEBENGINEWEBAUTHUXREQUEST_H
diff --git a/src/core/api/qwebenginewebauthuxrequest_p.h b/src/core/api/qwebenginewebauthuxrequest_p.h
index 4c685bac7..829ba5465 100644
--- a/src/core/api/qwebenginewebauthuxrequest_p.h
+++ b/src/core/api/qwebenginewebauthuxrequest_p.h
@@ -1,5 +1,6 @@
// 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
+// Qt-Security score:significant reason:default
#ifndef QWEBENGINEWEBAUTHUXREQUEST_P_H
#define QWEBENGINEWEBAUTHUXREQUEST_P_H
diff --git a/src/core/compositor/compositor.h b/src/core/compositor/compositor.h
index aebd8f4c5..b160ca03c 100644
--- a/src/core/compositor/compositor.h
+++ b/src/core/compositor/compositor.h
@@ -131,6 +131,9 @@ public:
// Is the texture produced upside down?
virtual bool textureIsFlipped();
+ // Are there resources to be released?
+ virtual bool hasResources() { return false; }
+
// Release resources created in texture()
virtual void releaseResources();
diff --git a/src/core/compositor/native_skia_output_device.cpp b/src/core/compositor/native_skia_output_device.cpp
index b91512a40..8b79d574c 100644
--- a/src/core/compositor/native_skia_output_device.cpp
+++ b/src/core/compositor/native_skia_output_device.cpp
@@ -180,6 +180,11 @@ void NativeSkiaOutputDevice::releaseTexture()
}
}
+bool NativeSkiaOutputDevice::hasResources()
+{
+ return m_frontBuffer && m_frontBuffer->textureCleanupCallback;
+}
+
void NativeSkiaOutputDevice::releaseResources()
{
if (m_frontBuffer)
@@ -225,7 +230,10 @@ NativeSkiaOutputDevice::Buffer::Buffer(NativeSkiaOutputDevice *parent)
NativeSkiaOutputDevice::Buffer::~Buffer()
{
- DCHECK(!textureCleanupCallback);
+ // FIXME: Can't be called in case of threaded rendering with unexposed window.
+ //DCHECK(!textureCleanupCallback);
+ if (textureCleanupCallback)
+ qWarning("NativeSkiaOutputDevice: Leaking graphics resources.");
if (m_scopedSkiaWriteAccess)
endWriteSkia(false);
diff --git a/src/core/compositor/native_skia_output_device.h b/src/core/compositor/native_skia_output_device.h
index 9a573055d..a405f6684 100644
--- a/src/core/compositor/native_skia_output_device.h
+++ b/src/core/compositor/native_skia_output_device.h
@@ -74,6 +74,7 @@ public:
void swapFrame() override;
void waitForTexture() override;
void releaseTexture() override;
+ bool hasResources() override;
void releaseResources() override;
bool textureIsFlipped() override;
QSize size() override;
diff --git a/src/core/compositor/native_skia_output_device_opengl.cpp b/src/core/compositor/native_skia_output_device_opengl.cpp
index c43311d80..49bacd5fc 100644
--- a/src/core/compositor/native_skia_output_device_opengl.cpp
+++ b/src/core/compositor/native_skia_output_device_opengl.cpp
@@ -51,6 +51,56 @@
namespace QtWebEngineCore {
+class ScopedGLContextForCleanup
+{
+public:
+ ScopedGLContextForCleanup(QOpenGLContext *createContext, QSurface *createSurface)
+ : m_createContext(createContext), m_currentContext(QOpenGLContext::currentContext())
+ {
+ if (m_createContext == m_currentContext)
+ return;
+
+ if (!m_createContext->isValid()) {
+ skipCleanup = true;
+ return;
+ }
+
+ if (m_currentContext)
+ m_currentSurface = m_currentContext->surface();
+
+ if (!createContext->makeCurrent(createSurface)) {
+ skipCleanup = true;
+ qWarning("Failed to make OpenGL context current for clean-up, OpenGL resources will "
+ "not be destroyed.");
+ }
+ }
+
+ ~ScopedGLContextForCleanup()
+ {
+ if (!m_currentContext || m_createContext == m_currentContext || skipCleanup)
+ return;
+
+ if (!m_currentContext->makeCurrent(m_currentSurface))
+ qFatal("Failed to restore OpenGL context after clean-up.");
+ }
+
+ void deleteTexture(GLuint glTexture)
+ {
+ if (skipCleanup)
+ return;
+
+ auto *glFun = m_createContext->functions();
+ Q_ASSERT(glFun->glGetError() == GL_NO_ERROR);
+ glFun->glDeleteTextures(1, &glTexture);
+ }
+
+private:
+ QOpenGLContext *m_createContext;
+ QOpenGLContext *m_currentContext;
+ QSurface *m_currentSurface = nullptr;
+ bool skipCleanup = false;
+};
+
NativeSkiaOutputDeviceOpenGL::NativeSkiaOutputDeviceOpenGL(
scoped_refptr<gpu::SharedContextState> contextState, bool requiresAlpha,
gpu::MemoryTracker *memoryTracker, viz::SkiaOutputSurfaceDependency *dependency,
@@ -221,10 +271,12 @@ QSGTexture *NativeSkiaOutputDeviceOpenGL::texture(QQuickWindow *win, uint32_t te
glxFun->glXBindTexImageEXT(display, glxPixmap, GLX_FRONT_LEFT_EXT, nullptr);
glFun->glBindTexture(GL_TEXTURE_2D, 0);
- m_frontBuffer->textureCleanupCallback = [glFun, glxFun, display, glxPixmap, glTexture,
- glxHelper, pixmapId]() {
+ QSurface *createSurface = glContext->surface();
+ m_frontBuffer->textureCleanupCallback = [glContext, createSurface, glxFun, display,
+ glxPixmap, glTexture, glxHelper, pixmapId]() {
+ ScopedGLContextForCleanup cleanupContext(glContext, createSurface);
glxFun->glXReleaseTexImageEXT(display, glxPixmap, GLX_FRONT_LEFT_EXT);
- glFun->glDeleteTextures(1, &glTexture);
+ cleanupContext.deleteTexture(glTexture);
glXDestroyGLXPixmap(display, glxPixmap);
glxHelper->freePixmap(pixmapId);
};
@@ -273,9 +325,11 @@ QSGTexture *NativeSkiaOutputDeviceOpenGL::texture(QQuickWindow *win, uint32_t te
glExtFun->glEGLImageTargetTexture2DOES(GL_TEXTURE_2D, eglImage);
glFun->glBindTexture(GL_TEXTURE_2D, 0);
- m_frontBuffer->textureCleanupCallback = [glFun, eglFun, glTexture, eglDisplay,
- eglImage]() {
- glFun->glDeleteTextures(1, &glTexture);
+ QSurface *createSurface = glContext->surface();
+ m_frontBuffer->textureCleanupCallback = [glContext, createSurface, eglFun, glTexture,
+ eglDisplay, eglImage]() {
+ ScopedGLContextForCleanup cleanupContext(glContext, createSurface);
+ cleanupContext.deleteTexture(glTexture);
eglFun->eglDestroyImage(eglDisplay, eglImage);
};
}
@@ -328,11 +382,12 @@ QSGTexture *NativeSkiaOutputDeviceOpenGL::texture(QQuickWindow *win, uint32_t te
glMemoryObject, 0);
glFun->glBindTexture(GL_TEXTURE_2D, 0);
- m_frontBuffer->textureCleanupCallback = [glFun, glExtFun, glTexture, glMemoryObject]() {
- Q_ASSERT(glFun->glGetError() == GL_NO_ERROR);
-
+ QSurface *createSurface = glContext->surface();
+ m_frontBuffer->textureCleanupCallback = [glContext, createSurface, glExtFun, glTexture,
+ glMemoryObject]() {
+ ScopedGLContextForCleanup cleanupContext(glContext, createSurface);
glExtFun->glDeleteMemoryObjectsEXT(1, &glMemoryObject);
- glFun->glDeleteTextures(1, &glTexture);
+ cleanupContext.deleteTexture(glTexture);
};
#else
Q_UNREACHABLE();
@@ -384,12 +439,11 @@ QSGTexture *NativeSkiaOutputDeviceOpenGL::texture(QQuickWindow *win, uint32_t te
uint32_t glTexture = makeCGLTexture(win, ioSurface.get(), size());
texture = QNativeInterface::QSGOpenGLTexture::fromNative(glTexture, win, size(), texOpts);
- m_frontBuffer->textureCleanupCallback = [glTexture]() {
- auto *glContext = QOpenGLContext::currentContext();
- if (!glContext)
- return;
- auto glFun = glContext->functions();
- glFun->glDeleteTextures(1, &glTexture);
+ QOpenGLContext *glContext = QOpenGLContext::currentContext();
+ QSurface *createSurface = glContext->surface();
+ m_frontBuffer->textureCleanupCallback = [glContext, createSurface, glTexture]() {
+ ScopedGLContextForCleanup cleanupContext(glContext, createSurface);
+ cleanupContext.deleteTexture(glTexture);
};
#endif // BUILDFLAG(IS_OZONE)
diff --git a/src/core/compositor/wgl_helper.cpp b/src/core/compositor/wgl_helper.cpp
index 85e6bb915..3c3a096b9 100644
--- a/src/core/compositor/wgl_helper.cpp
+++ b/src/core/compositor/wgl_helper.cpp
@@ -124,9 +124,10 @@ D3DSharedTexture::D3DSharedTexture(WGLHelper::WGLFunctions *wglFun, ID3D11Device
// for an already shared texture.
immediateContext->CopyResource(m_d3dTexture.Get(), srcTexture.Get());
- auto *glContext = QOpenGLContext::currentContext();
- Q_ASSERT(glContext);
- auto *glFun = glContext->functions();
+ m_createContext = QOpenGLContext::currentContext();
+ m_createSurface = m_createContext->surface();
+ Q_ASSERT(m_createContext);
+ auto *glFun = m_createContext->functions();
glFun->glGenTextures(1, &m_glTexture);
@@ -148,10 +149,31 @@ D3DSharedTexture::~D3DSharedTexture()
m_wglFun->wglDXUnregisterObjectNV(m_interopDevice, m_glTextureHandle);
}
- auto *glContext = QOpenGLContext::currentContext();
- if (m_glTexture && glContext) {
- auto *glFun = glContext->functions();
+ if (m_glTexture) {
+ QOpenGLContext *currentContext = QOpenGLContext::currentContext();
+ QSurface *currentSurface = nullptr;
+
+ if (m_createContext != currentContext) {
+ if (currentContext)
+ currentSurface = currentContext->surface();
+
+ if (!m_createContext->makeCurrent(m_createSurface)) {
+ qWarning("Failed to make OpenGL context current for clean-up, OpenGL resources "
+ "will not be destroyed.");
+ return;
+ }
+ }
+
+ if (!m_createContext->isValid())
+ return;
+
+ auto *glFun = m_createContext->functions();
glFun->glDeleteTextures(1, &m_glTexture);
+
+ if (currentSurface) {
+ if (!currentContext->makeCurrent(currentSurface))
+ qFatal("Failed to restore OpenGL context after clean-up.");
+ }
}
}
diff --git a/src/core/compositor/wgl_helper.h b/src/core/compositor/wgl_helper.h
index c726c234c..1f94e0706 100644
--- a/src/core/compositor/wgl_helper.h
+++ b/src/core/compositor/wgl_helper.h
@@ -20,6 +20,9 @@
QT_BEGIN_NAMESPACE
+class QOpenGLContext;
+class QSurface;
+
class WGLHelper
{
public:
@@ -88,6 +91,8 @@ private:
HANDLE m_interopDevice;
Microsoft::WRL::ComPtr<ID3D11Texture2D> m_d3dTexture;
+ QOpenGLContext *m_createContext = nullptr;
+ QSurface *m_createSurface = nullptr;
GLuint m_glTexture = 0;
HANDLE m_glTextureHandle = INVALID_HANDLE_VALUE;
diff --git a/src/core/doc/src/qtwebengine-overview.qdoc b/src/core/doc/src/qtwebengine-overview.qdoc
index 3a5d30338..3d7ebf6ad 100644
--- a/src/core/doc/src/qtwebengine-overview.qdoc
+++ b/src/core/doc/src/qtwebengine-overview.qdoc
@@ -249,28 +249,8 @@
\section1 High DPI Support
- To support High DPI devices, it is recommended that the application attribute
- Qt::AA_EnableHighDpiScaling is set to enable automatic scaling based on the
- pixel density of the monitor. In \QWE applications, the scaling
- affects the default zooming factor and scrollbar size.
-
- For example:
-
- \code
- int main(int argc, char *argv[])
- {
- QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
- QApplication app(argc, argv);
- // ...
- }
- \endcode
-
- \QWE bundles images for normal and high-dpi resolutions into
- \e qtwebengine_resources_100p.pak and \e qtwebengine_resources_200p.pak
- files. Depending on the target resolutions, one or both of these files need
- to be deployed.
-
- For more information, see \l{High DPI}.
+ High DPI support is always enabled in Qt 6, and this also applies to \QWE. For more information,
+ see \l{High DPI}.
\section1 Using WebEngine Core
diff --git a/src/core/profile_adapter.h b/src/core/profile_adapter.h
index b6357ce1c..36d286851 100644
--- a/src/core/profile_adapter.h
+++ b/src/core/profile_adapter.h
@@ -61,7 +61,8 @@ public:
enum PersistentCookiesPolicy {
NoPersistentCookies = 0,
AllowPersistentCookies,
- ForcePersistentCookies
+ ForcePersistentCookies,
+ OnlyPersistentCookies,
};
enum VisitedLinksPolicy {
diff --git a/src/core/profile_io_data_qt.cpp b/src/core/profile_io_data_qt.cpp
index 567403a7c..85b533b93 100644
--- a/src/core/profile_io_data_qt.cpp
+++ b/src/core/profile_io_data_qt.cpp
@@ -224,7 +224,8 @@ void ProfileIODataQt::ConfigureNetworkContextParams(bool in_memory,
if (m_persistentCookiesPolicy != ProfileAdapter::NoPersistentCookies) {
network_context_params->file_paths->cookie_database_name = base::FilePath::FromASCII("Cookies");
network_context_params->restore_old_session_cookies = m_persistentCookiesPolicy == ProfileAdapter::ForcePersistentCookies;
- network_context_params->persist_session_cookies = m_persistentCookiesPolicy != ProfileAdapter::NoPersistentCookies;
+ network_context_params->persist_session_cookies =
+ m_persistentCookiesPolicy != ProfileAdapter::OnlyPersistentCookies;
}
}
diff --git a/src/core/render_widget_host_view_qt_delegate_item.cpp b/src/core/render_widget_host_view_qt_delegate_item.cpp
index 77adb843c..dc8eac4de 100644
--- a/src/core/render_widget_host_view_qt_delegate_item.cpp
+++ b/src/core/render_widget_host_view_qt_delegate_item.cpp
@@ -5,10 +5,13 @@
#include "render_widget_host_view_qt_delegate_client.h"
+#include <QtCore/qrunnable.h>
+#include <QtCore/qthread.h>
#include <QtGui/qevent.h>
#include <QtGui/qguiapplication.h>
#include <QtGui/qwindow.h>
#include <QtQuick/qsgimagenode.h>
+#include <rhi/qrhi.h>
#if QT_CONFIG(accessibility)
#include <QtGui/qaccessible.h>
@@ -37,7 +40,9 @@ RenderWidgetHostViewQtDelegateItem::RenderWidgetHostViewQtDelegateItem(RenderWid
RenderWidgetHostViewQtDelegateItem::~RenderWidgetHostViewQtDelegateItem()
{
- releaseTextureResources();
+ if (QQuickItem::window())
+ releaseResources();
+
unbind(); // Compositor::Observer
if (m_widgetDelegate) {
m_widgetDelegate->Unbind();
@@ -326,12 +331,6 @@ void RenderWidgetHostViewQtDelegateItem::itemChange(ItemChange change, const Ite
for (const QMetaObject::Connection &c : std::as_const(m_windowConnections))
disconnect(c);
m_windowConnections.clear();
-
- auto comp = compositor();
- if (comp && comp->type() == Compositor::Type::Native) {
- comp->releaseTexture();
- comp->releaseResources();
- }
}
if (value.window) {
@@ -343,10 +342,12 @@ void RenderWidgetHostViewQtDelegateItem::itemChange(ItemChange change, const Ite
m_windowConnections.append(connect(value.window, SIGNAL(xChanged(int)), SLOT(onWindowPosChanged())));
m_windowConnections.append(
connect(value.window, SIGNAL(yChanged(int)), SLOT(onWindowPosChanged())));
- m_windowConnections.append(
- connect(value.window, &QQuickWindow::sceneGraphAboutToStop, this,
- &RenderWidgetHostViewQtDelegateItem::releaseTextureResources,
- Qt::DirectConnection));
+ m_windowConnections.append(connect(
+ value.window, &QQuickWindow::sceneGraphAboutToStop, this,
+ &RenderWidgetHostViewQtDelegateItem::releaseResources, Qt::DirectConnection));
+ m_windowConnections.append(connect(
+ value.window, &QQuickWindow::sceneGraphInvalidated, this,
+ &RenderWidgetHostViewQtDelegateItem::releaseResources, Qt::DirectConnection));
if (!m_isPopup)
m_windowConnections.append(connect(value.window, SIGNAL(closing(QQuickCloseEvent*)), SLOT(onHide())));
}
@@ -366,6 +367,61 @@ void RenderWidgetHostViewQtDelegateItem::itemChange(ItemChange change, const Ite
}
}
+class CleanupJob : public QRunnable
+{
+public:
+ CleanupJob(Compositor::Handle<Compositor> compositor) : m_compositor(std::move(compositor)) { }
+
+ ~CleanupJob()
+ {
+ if (m_compositor->hasResources()) {
+ qWarning("Failed to release graphics resources because the clean-up render job was "
+ "deleted.");
+ }
+ }
+
+ void run() override { m_compositor->releaseResources(); }
+
+private:
+ Compositor::Handle<Compositor> m_compositor;
+};
+
+void RenderWidgetHostViewQtDelegateItem::releaseResources()
+{
+ auto comp = compositor();
+ if (!comp || comp->type() != Compositor::Type::Native || !comp->hasResources())
+ return;
+
+ comp->releaseTexture();
+
+ QQuickWindow *win = QQuickItem::window();
+ if (!win) {
+ qWarning("Failed to release graphics resources because QQuickWindow is not available.");
+ return;
+ }
+
+ QRhi *rhi = win->rhi();
+ if (!rhi) {
+ qWarning("Failed to release graphics resources because RHI is not available.");
+ return;
+ }
+
+ // Do not schedule clean-up if the resources were created on the current thread.
+ if (QThread::currentThread() == rhi->thread()) {
+ comp->releaseResources();
+ return;
+ }
+
+ if (win->isExposed())
+ win->scheduleRenderJob(new CleanupJob(std::move(comp)), QQuickWindow::NoStage);
+ else {
+ // TODO: Try to find a proper way to schedule job on the render thread if the window is
+ // not exposed.
+ // This is reproducible with ./tst_qquickwebengineviewgraphics simpleGraphics simpleGraphics
+ qWarning("Failed to release graphics resources because QQuickWindow is not exposed.");
+ }
+}
+
QSGNode *RenderWidgetHostViewQtDelegateItem::updatePaintNode(QSGNode *oldNode, UpdatePaintNodeData *)
{
auto comp = compositor();
@@ -447,15 +503,6 @@ void RenderWidgetHostViewQtDelegateItem::onHide()
m_client->forwardEvent(&event);
}
-void RenderWidgetHostViewQtDelegateItem::releaseTextureResources()
-{
- auto comp = compositor();
- if (!comp || comp->type() != Compositor::Type::Native)
- return;
-
- comp->releaseResources();
-}
-
void RenderWidgetHostViewQtDelegateItem::adapterClientChanged(WebContentsAdapterClient *client)
{
m_adapterClient = client;
diff --git a/src/core/render_widget_host_view_qt_delegate_item.h b/src/core/render_widget_host_view_qt_delegate_item.h
index 65fbeeb17..f0351aa9f 100644
--- a/src/core/render_widget_host_view_qt_delegate_item.h
+++ b/src/core/render_widget_host_view_qt_delegate_item.h
@@ -95,6 +95,7 @@ protected:
void inputMethodEvent(QInputMethodEvent *event) override;
void geometryChange(const QRectF &newGeometry, const QRectF &oldGeometry) override;
void itemChange(ItemChange change, const ItemChangeData &value) override;
+ void releaseResources() override;
QSGNode *updatePaintNode(QSGNode *, UpdatePaintNodeData *) override;
void adapterClientChanged(WebContentsAdapterClient *client) override;
@@ -104,7 +105,6 @@ private Q_SLOTS:
void onBeforeRendering();
void onAfterFrameEnd();
void onWindowPosChanged();
- void releaseTextureResources();
void onHide();
private:
diff --git a/src/webenginequick/api/qquickwebengineprofile.cpp b/src/webenginequick/api/qquickwebengineprofile.cpp
index 6aebc18a1..dce3c8822 100644
--- a/src/webenginequick/api/qquickwebengineprofile.cpp
+++ b/src/webenginequick/api/qquickwebengineprofile.cpp
@@ -96,6 +96,9 @@ QT_BEGIN_NAMESPACE
\value AllowPersistentCookies
Cookies marked persistent are saved to and restored from disk, whereas session cookies
are only stored to disk for crash recovery. This is the default setting.
+ \value OnlyPersistentCookies
+ Cookies marked persistent are saved to and restored from disk, whereas session cookies
+ are never stored to disk, even for crash recovery.
\value ForcePersistentCookies
Both session and persistent cookies are saved to and restored from disk.
*/
@@ -726,6 +729,9 @@ void QQuickWebEngineProfile::setHttpCacheType(QQuickWebEngineProfile::HttpCacheT
Cookies marked persistent are saved to and restored from disk, whereas session cookies
are only stored to disk for crash recovery.
This is the default value for non off-the-record profile with storageName.
+ \value WebEngineProfile.OnlyPersistentCookies
+ Cookies marked persistent are saved to and restored from disk, whereas session cookies
+ are never stored to disk, even for crash recovery.
\value WebEngineProfile.ForcePersistentCookies
Both session and persistent cookies are saved to and restored from disk.
*/
diff --git a/src/webenginequick/api/qquickwebengineprofile.h b/src/webenginequick/api/qquickwebengineprofile.h
index 9a21852ba..899d431a1 100644
--- a/src/webenginequick/api/qquickwebengineprofile.h
+++ b/src/webenginequick/api/qquickwebengineprofile.h
@@ -65,7 +65,8 @@ public:
enum PersistentCookiesPolicy {
NoPersistentCookies,
AllowPersistentCookies,
- ForcePersistentCookies
+ ForcePersistentCookies,
+ OnlyPersistentCookies,
};
Q_ENUM(PersistentCookiesPolicy)
diff --git a/src/webenginequick/api/qquickwebengineprofileprototype.cpp b/src/webenginequick/api/qquickwebengineprofileprototype.cpp
index e6c4b8e99..d32d63ce7 100644
--- a/src/webenginequick/api/qquickwebengineprofileprototype.cpp
+++ b/src/webenginequick/api/qquickwebengineprofileprototype.cpp
@@ -161,6 +161,9 @@ void QQuickWebEngineProfilePrototype::setHttpCacheType(
Cookies marked persistent are saved to and restored from disk, whereas session cookies
are only stored to disk for crash recovery.
This is the default value for non off-the-record profile with storageName.
+ \value WebEngineProfile.OnlyPersistentCookies
+ Cookies marked persistent are saved to and restored from disk, whereas session cookies
+ are never stored to the disk, even for crash recovery.
\value WebEngineProfile.ForcePersistentCookies
Both session and persistent cookies are saved to and restored from disk.
*/