aboutsummaryrefslogtreecommitdiff
path: root/src/webengine/cookiefilter.cpp
diff options
context:
space:
mode:
authorAqua-sama <aqua@iserlohn-fortress.net>2018-03-23 17:07:49 +0100
committerAqua-sama <aqua@iserlohn-fortress.net>2018-03-23 17:07:49 +0100
commit55f5a827a7abc2f248c2405e1977222062b88e6b (patch)
tree9c49e8fa9b96072ee8c8e4b7ff0e82cd322be1f0 /src/webengine/cookiefilter.cpp
parentpoi-config saving config (diff)
downloadsmolbote-55f5a827a7abc2f248c2405e1977222062b88e6b.tar.xz
Cookie filter
- Requires Qt 5.11 (now required) - New settings: filter.cookies: block.all, block.thirdParty, path
Diffstat (limited to 'src/webengine/cookiefilter.cpp')
-rw-r--r--src/webengine/cookiefilter.cpp30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/webengine/cookiefilter.cpp b/src/webengine/cookiefilter.cpp
new file mode 100644
index 0000000..08938b1
--- /dev/null
+++ b/src/webengine/cookiefilter.cpp
@@ -0,0 +1,30 @@
+/*
+ * This file is part of smolbote. It's copyrighted by the contributors recorded
+ * in the version control history of the file, available from its original
+ * location: https://neueland.iserlohn-fortress.net/smolbote.hg
+ *
+ * SPDX-License-Identifier: GPL-3.0
+ */
+
+#include "cookiefilter.h"
+
+CookieFilter::CookieFilter(bool shouldBlockAll, bool shouldBlockThirdParty, QObject *parent)
+ : QObject(parent)
+{
+ blockAll = shouldBlockAll;
+ blockThirdParty = shouldBlockThirdParty;
+}
+
+bool CookieFilter::shouldBlock(const QWebEngineCookieStore::FilterRequest &filter)
+{
+ // block all check
+ if(blockAll)
+ return true;
+
+ // block third-party cookies check
+ if(blockThirdParty && filter.thirdParty)
+ return true;
+
+ // otherwise, don't block
+ return false;
+}