It looks like returning false from QWebEngineCookieStore::setCookieFilter(...) does not filter cookies anymore with Qt 5.15, while it works fine with Qt 5.14.2.
To reproduce:
- Remove ~/.local/share/QtExamples/simplebrowser/QtWebEngine/Default/Cookies (or the equivalent on non-Linux systems)
- Patch simplebrowser to reject all cookies:
diff --git i/examples/webenginewidgets/simplebrowser/main.cpp w/examples/webenginewidgets/simplebrowser/main.cpp
index ddc8b4d0..1a768a93 100644
--- i/examples/webenginewidgets/simplebrowser/main.cpp
+++ w/examples/webenginewidgets/simplebrowser/main.cpp
@@ -54,6 +54,7 @@
#include <QApplication>
#include <QWebEngineProfile>
#include <QWebEngineSettings>
+#include <QWebEngineCookieStore>
QUrl commandLineUrlArgument()
{
@@ -75,6 +76,7 @@ int main(int argc, char **argv)
app.setWindowIcon(QIcon(QStringLiteral(":AppLogoColor.png")));
QWebEngineSettings::defaultSettings()->setAttribute(QWebEngineSettings::PluginsEnabled, true);
+ QWebEngineProfile::defaultProfile()->cookieStore()->setCookieFilter([](auto request) { return false; });
#if QT_VERSION >= QT_VERSION_CHECK(5, 13, 0)
QWebEngineSettings::defaultSettings()->setAttribute(QWebEngineSettings::DnsPrefetchEnabled, true);
QWebEngineProfile::defaultProfile()->setUseForGlobalCertificateVerification();
- Run simplebrowser youtube.com with Qt 5.14
- Run sqlite3 ~/.local/share/QtExamples/simplebrowser/QtWebEngine/Default/Cookies 'select * from Cookies' and observe how there are no cookies
- Repeat with Qt 5.15 and you'll see various cookies saved to the database.