diff options
Diffstat (limited to 'src/webenginequick/api')
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) |