summaryrefslogtreecommitdiffstats
path: root/src/webenginequick/api
diff options
context:
space:
mode:
Diffstat (limited to 'src/webenginequick/api')
-rw-r--r--src/webenginequick/api/qquickwebengineprofile.cpp6
-rw-r--r--src/webenginequick/api/qquickwebengineprofile.h3
-rw-r--r--src/webenginequick/api/qquickwebengineprofileprototype.cpp3
-rw-r--r--src/webenginequick/api/qquickwebenginescriptcollection.cpp20
4 files changed, 18 insertions, 14 deletions
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.
*/
diff --git a/src/webenginequick/api/qquickwebenginescriptcollection.cpp b/src/webenginequick/api/qquickwebenginescriptcollection.cpp
index 7a3e894a6..09a8d181e 100644
--- a/src/webenginequick/api/qquickwebenginescriptcollection.cpp
+++ b/src/webenginequick/api/qquickwebenginescriptcollection.cpp
@@ -3,12 +3,10 @@
#include "qquickwebenginescriptcollection_p.h"
#include "qquickwebenginescriptcollection_p_p.h"
-#include "qwebenginescriptcollection.h"
+#include <QtWebEngineCore/qwebenginescriptcollection.h>
#include <QtWebEngineCore/private/qwebenginescriptcollection_p.h>
#include <QtQml/qqmlinfo.h>
-#include <QtQml/private/qqmlengine_p.h>
-#include <QtQml/private/qv4scopedvalue_p.h>
-#include <QtQml/private/qv4arrayobject_p.h>
+#include <QtQml/qqmlengine.h>
/*!
\qmltype WebEngineScriptCollection
@@ -198,15 +196,11 @@ QJSValue QQuickWebEngineScriptCollection::collection() const
}
const QList<QWebEngineScript> &list = d->toList();
- QV4::ExecutionEngine *v4 = d->m_qmlEngine->handle();
- QV4::Scope scope(v4);
- QV4::Scoped<QV4::ArrayObject> scriptArray(scope, v4->newArrayObject(list.size()));
- int i = 0;
- for (const auto &val : list) {
- QV4::ScopedValue sv(scope, v4->fromVariant(QVariant::fromValue(val)));
- scriptArray->put(i++, sv);
- }
- return QJSValuePrivate::fromReturnedValue(scriptArray.asReturnedValue());
+ QJSValue scriptArray = d->m_qmlEngine->newArray(list.size());
+ uint32_t i = 0;
+ for (const auto &val : list)
+ scriptArray.setProperty(i++, d->m_qmlEngine->toScriptValue(val));
+ return scriptArray;
}
void QQuickWebEngineScriptCollection::setCollection(const QJSValue &scripts)