summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2018-09-27 09:44:15 +0200
committerLiang Qi <liang.qi@qt.io>2018-09-27 10:17:04 +0200
commit95baba26936cdabe5cf4d5eaa4d59f97e4a2102d (patch)
tree5fd4c75167a5a040bb34aeec54d5e8ef2a06f137
parent32b67aea15fdf47d6b86e1e5303d25ec6e8ded37 (diff)
parentdd7c3f92c4668ed9ebdb1714d00de1cb61ab7dd4 (diff)
Merge remote-tracking branch 'origin/5.11' into 5.12
Conflicts: configure.json configure.pri src/3rdparty Change-Id: I2e0614b33596fe66999508556c464ed84acc8e2f
-rw-r--r--configure.pri8
-rw-r--r--mkspecs/features/configure.prf5
-rw-r--r--src/core/configure.json15
-rw-r--r--src/webengine/api/qquickwebengineprofile.cpp36
-rw-r--r--src/webengine/doc/src/qtwebengine-platform-notes.qdoc6
-rw-r--r--src/webenginewidgets/api/qwebengineprofile.cpp9
6 files changed, 71 insertions, 8 deletions
diff --git a/configure.pri b/configure.pri
index 4ce40351a..254755743 100644
--- a/configure.pri
+++ b/configure.pri
@@ -286,3 +286,11 @@ defineTest(qtConfReport_macosToolchainVersion) {
contains(arg, "deploymentTarget"): report_message = "$$QMAKE_MACOSX_DEPLOYMENT_TARGET"
!isEmpty(report_message): qtConfReportPadded($$1, $$report_message)
}
+
+defineTest(qtConfTest_isWindowsHostCompiler64) {
+ win_host_arch = $$(VSCMD_ARG_HOST_ARCH)
+ isEmpty(win_host_arch): return(true)
+ contains(win_host_arch,"x64"): return(true)
+ qtLog("Required 64-bit cross-building or native toolchain was not detected.")
+ return(false)
+}
diff --git a/mkspecs/features/configure.prf b/mkspecs/features/configure.prf
index 21c2f8c01..0721bdd2c 100644
--- a/mkspecs/features/configure.prf
+++ b/mkspecs/features/configure.prf
@@ -37,6 +37,11 @@ defineTest(runConfigure) {
return(false)
}
+ win32:!qtConfig(webengine-win-compiler64) {
+ skipBuild("Required 64-bit cross-building or native toolchain could not be found.")
+ return(false)
+ }
+
!qtConfig(webengine-gperf) {
skipBuild("Required gperf could not be found.")
return(false)
diff --git a/src/core/configure.json b/src/core/configure.json
index e546cf899..000faf686 100644
--- a/src/core/configure.json
+++ b/src/core/configure.json
@@ -310,6 +310,10 @@
"webengine-sanitizer": {
"label" : "sanitizer support",
"type": "isSanitizerSupported"
+ },
+ "webengine-win-compiler64": {
+ "label": "64bit compiler",
+ "type": "isWindowsHostCompiler64"
}
},
@@ -629,6 +633,12 @@
"autoDetect": "config.unix",
"condition": "libs.webengine-poppler-cpp",
"output": [ "privateFeature" ]
+ },
+ "webengine-win-compiler64": {
+ "label": "64bit compiler",
+ "condition": "config.win32 && tests.webengine-win-compiler64",
+ "type": "isWindowsHostCompiler64",
+ "output": [ "privateFeature" ]
}
},
@@ -662,6 +672,11 @@
"type": "warning",
"condition": "config.unix && !features.webengine-host-pkg-config",
"message": "host pkg-config not found"
+ },
+ {
+ "type": "warning",
+ "condition": "config.win32 && !features.webengine-win-compiler64",
+ "message": "64-bit cross-building or native toolchain is required to build QtWebEngine."
}
],
diff --git a/src/webengine/api/qquickwebengineprofile.cpp b/src/webengine/api/qquickwebengineprofile.cpp
index f536695ef..ed2600e49 100644
--- a/src/webengine/api/qquickwebengineprofile.cpp
+++ b/src/webengine/api/qquickwebengineprofile.cpp
@@ -69,11 +69,18 @@ ASSERT_ENUMS_MATCH(QQuickWebEngineDownloadItem::MimeHtmlSaveFormat, QtWebEngineC
\inmodule QtWebEngine
- A web engine profile contains properties and functionality shared by a group of web engine
- pages.
-
- Information about visited links is stored together with persistent cookies and other persistent
- data in a storage described by the persistentStoragePath property.
+ A web engine profile contains settings, scripts, persistent cookie policy, and the list of
+ visited links shared by all web engine pages that belong to the profile.
+
+ Information about visited links is stored together with persistent cookies
+ and other persistent data in a storage determined by the storageName
+ property. Persistent data is stored in a subdirectory determined by the
+ persistentStoragePath property and the cache in a subdirectory determined by
+ the cachePath property. The httpCacheType property describes the type of the
+ cache: \e in-memory or \e on-disk. If only the storageName property is set,
+ the other values are generated automatically based on it. If you specify
+ any of the values manually, you should do it before creating any pages that
+ belong to the profile.
Profiles can be used to isolate pages from each other. A typical use case is a dedicated
\e {off-the-record profile} for a \e {private browsing} mode. An off-the-record profile forces
@@ -310,8 +317,23 @@ void QQuickWebEngineProfilePrivate::userScripts_clear(QQmlListProperty<QQuickWeb
\brief Contains settings, scripts, and visited links common to multiple web engine views.
WebEngineProfile contains settings, scripts, and the list of visited links shared by all
- views that belong to the profile. As such, profiles can be used to isolate views
- from each other. A typical use case is a dedicated profile for a 'private browsing' mode.
+ views that belong to the profile.
+
+ Information about visited links is stored together with persistent cookies
+ and other persistent data in a storage determined by the storageName
+ property. Persistent data is stored in a subdirectory determined by the
+ persistentStoragePath property and the cache in a subdirectory determined by
+ the cachePath property. The httpCacheType property describes the type of the
+ cache: \e in-memory or \e on-disk. If only the storageName property is set,
+ the other values are generated automatically based on it. If you specify
+ any of the values manually, you should do it before creating any pages that
+ belong to the profile.
+
+ Profiles can be used to isolate pages from each other. A typical use case is
+ a dedicated \e {off-the-record profile} for a \e {private browsing} mode. An
+ off-the-record profile forces cookies, the HTTP cache, and other normally
+ persistent data to be stored only in memory. The offTheRecord property holds
+ whether a profile is off-the-record.
Each web engine view has an associated profile. Views that do not have a specific profile set
share a common default one.
diff --git a/src/webengine/doc/src/qtwebengine-platform-notes.qdoc b/src/webengine/doc/src/qtwebengine-platform-notes.qdoc
index 6c8703fe4..59429ec5a 100644
--- a/src/webengine/doc/src/qtwebengine-platform-notes.qdoc
+++ b/src/webengine/doc/src/qtwebengine-platform-notes.qdoc
@@ -71,6 +71,12 @@
On Windows, Visual Studio 2017 and Windows 10 SDK are required.
+ Qt WebEngine can only be built on 64-bit Windows, with a x64-bit toolchain.
+ For building Qt WebEngine for x86 applications, you need to configure
+ and compile Qt with the Visual Studio 2017 x64 to x86 cross-compile
+ toolchain. This toolchain can be set up on the command line by running
+ \c{vcvarsall.bat amd64_x86}.
+
\section2 Linux
On Linux, Clang or GCC version 5 or later is required.
diff --git a/src/webenginewidgets/api/qwebengineprofile.cpp b/src/webenginewidgets/api/qwebengineprofile.cpp
index b2fe49da3..537cf41fd 100644
--- a/src/webenginewidgets/api/qwebengineprofile.cpp
+++ b/src/webenginewidgets/api/qwebengineprofile.cpp
@@ -77,7 +77,14 @@ using QtWebEngineCore::ProfileAdapter;
to a common QWebEngineScriptCollection instance.
Information about visited links is stored together with persistent cookies and other persistent
- data in a storage returned by persistentStoragePath(). The cache can be cleared of links by
+ data in a storage returned by storageName(). Persistent data is stored in a subdirectory set by
+ calling setPersistentStoragePath(), and the cache is located in a subdirectory set by calling
+ setCachePath(). The cache type can be set to \e in-memory or \e on-disk by calling
+ setHttpCacheType(). If only the storage name is set, the subdirectories are created and named
+ automatically. If you set any of the values manually, you should do it before creating any
+ pages that belong to the profile.
+
+ The cache can be cleared of links by calling
clearVisitedLinks() or clearAllVisitedLinks(). PersistentCookiesPolicy describes whether
session and persistent cookies are saved to and restored from memory or disk.