summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAndrea Diamantini <adjam7@gmail.com>2009-11-20 02:27:17 +0100
committerAndrea Diamantini <adjam7@gmail.com>2009-11-20 02:27:17 +0100
commit85900021a041818ecf2415f5925fcc2a5aa5e7a4 (patch)
treec0d8474cdf74e9c19f6f2a42a9971ff4a14c0dfa /src
parentMinimum font size (diff)
downloadrekonq-85900021a041818ecf2415f5925fcc2a5aa5e7a4.tar.xz
AdBlock. First blocks :D
Diffstat (limited to 'src')
-rw-r--r--src/CMakeLists.txt12
-rw-r--r--src/adblock/adblockmanager.cpp47
-rw-r--r--src/adblock/adblockmanager.h48
-rw-r--r--src/webpage.cpp5
-rw-r--r--src/webpage.h5
5 files changed, 111 insertions, 6 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 296e91fd..a675573a 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -27,11 +27,16 @@ SET( rekonq_KDEINIT_SRCS
webpluginfactory.cpp
websnap.cpp
webview.cpp
+#----------------------------------------
rekonqpage/newtabpage.cpp
+#----------------------------------------
settings/settingsdialog.cpp
- bookmarkspanel/bookmarkspanel.cpp
- bookmarkspanel/bookmarkstreemodel.cpp
- bookmarkspanel/bookmarksproxy.cpp
+#----------------------------------------
+ bookmarkspanel/bookmarkspanel.cpp
+ bookmarkspanel/bookmarkstreemodel.cpp
+ bookmarkspanel/bookmarksproxy.cpp
+#----------------------------------------
+ adblock/adblockmanager.cpp
)
@@ -51,6 +56,7 @@ KDE4_ADD_KCFG_FILES( rekonq_KDEINIT_SRCS rekonq.kcfgc )
INCLUDE_DIRECTORIES ( ${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_CURRENT_SOURCE_DIR}/rekonqpage
${CMAKE_CURRENT_SOURCE_DIR}/settings
+ ${CMAKE_CURRENT_SOURCE_DIR}/adblock
${CMAKE_CURRENT_BINARY_DIR}
${KDE4_INCLUDES}
${QT4_INCLUDES}
diff --git a/src/adblock/adblockmanager.cpp b/src/adblock/adblockmanager.cpp
new file mode 100644
index 00000000..2d3feff7
--- /dev/null
+++ b/src/adblock/adblockmanager.cpp
@@ -0,0 +1,47 @@
+/* ============================================================
+*
+* This file is a part of the rekonq project
+*
+* Copyright (C) 2009 by Andrea Diamantini <adjam7 at gmail dot com>
+*
+*
+* This program is free software; you can redistribute it and/or
+* modify it under the terms of the GNU General Public License as
+* published by the Free Software Foundation; either version 2 of
+* the License or (at your option) version 3 or any later version
+* accepted by the membership of KDE e.V. (or its successor approved
+* by the membership of KDE e.V.), which shall act as a proxy
+* defined in Section 14 of version 3 of the license.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program. If not, see <http://www.gnu.org/licenses/>.
+*
+* ============================================================ */
+
+
+#include "adblockmanager.h"
+#include "adblockmanager.moc"
+
+#include <QUrl>
+
+
+AdBlockManager::AdBlockManager(QObject *parent)
+ : QObject(parent)
+{
+}
+
+
+AdBlockManager::~AdBlockManager()
+{
+}
+
+
+bool AdBlockManager::isUrlAllowed(const QUrl &url)
+{
+ return true;
+} \ No newline at end of file
diff --git a/src/adblock/adblockmanager.h b/src/adblock/adblockmanager.h
new file mode 100644
index 00000000..12e897c1
--- /dev/null
+++ b/src/adblock/adblockmanager.h
@@ -0,0 +1,48 @@
+/* ============================================================
+*
+* This file is a part of the rekonq project
+*
+* Copyright (C) 2009 by Andrea Diamantini <adjam7 at gmail dot com>
+*
+*
+* This program is free software; you can redistribute it and/or
+* modify it under the terms of the GNU General Public License as
+* published by the Free Software Foundation; either version 2 of
+* the License or (at your option) version 3 or any later version
+* accepted by the membership of KDE e.V. (or its successor approved
+* by the membership of KDE e.V.), which shall act as a proxy
+* defined in Section 14 of version 3 of the license.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program. If not, see <http://www.gnu.org/licenses/>.
+*
+* ============================================================ */
+
+
+
+#ifndef ADBLOCK_MANAGER_H
+#define ADBLOCK_MANAGER_H
+
+
+#include <QObject>
+
+class QUrl;
+
+
+class AdBlockManager : public QObject
+{
+Q_OBJECT
+
+public:
+ AdBlockManager(QObject *parent = 0);
+ ~AdBlockManager();
+
+ bool isUrlAllowed(const QUrl &url);
+};
+
+#endif
diff --git a/src/webpage.cpp b/src/webpage.cpp
index 94ecbe09..9803d8a3 100644
--- a/src/webpage.cpp
+++ b/src/webpage.cpp
@@ -69,6 +69,7 @@ WebPage::WebPage(QObject *parent, qlonglong windowId)
: KWebPage(parent, windowId)
, m_keyboardModifiers(Qt::NoModifier)
, m_pressedButtons(Qt::NoButton)
+ , m_adBlockMan(new AdBlockManager(this))
{
setPluginFactory(new WebPluginFactory(this));
@@ -252,7 +253,5 @@ QString WebPage::errorPage(QNetworkReply *reply)
bool WebPage::authorizedRequest(const QUrl &url) const
{
- Q_UNUSED(url)
- // TODO implement ad-block here
- return true;
+ return m_adBlockMan->isUrlAllowed(url);
}
diff --git a/src/webpage.h b/src/webpage.h
index eb558220..acaaab25 100644
--- a/src/webpage.h
+++ b/src/webpage.h
@@ -32,6 +32,9 @@
#define WEBPAGE_H
+// Local Includes
+#include "adblockmanager.h"
+
// KDE Includes
#include <KWebPage>
@@ -75,6 +78,8 @@ private:
Qt::MouseButtons m_pressedButtons;
QUrl m_requestedUrl;
+
+ AdBlockManager *m_adBlockMan;
};
#endif