Falkon
Develop
Cross-platform Qt-based web browser
adblockplugin.h
Go to the documentation of this file.
1
/* ============================================================
2
* Falkon - Qt web browser
3
* Copyright (C) 2018 David Rosca <nowrep@gmail.com>
4
*
5
* This program is free software: you can redistribute it and/or modify
6
* it under the terms of the GNU General Public License as published by
7
* the Free Software Foundation, either version 3 of the License, or
8
* (at your option) any later version.
9
*
10
* This program is distributed in the hope that it will be useful,
11
* but WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
* GNU General Public License for more details.
14
*
15
* You should have received a copy of the GNU General Public License
16
* along with this program. If not, see <http://www.gnu.org/licenses/>.
17
* ============================================================ */
18
#pragma once
19
20
#include "
plugininterface.h
"
21
22
class
WebPage
;
23
class
BrowserWindow
;
24
25
class
AdBlockIcon
;
26
27
class
AdBlockPlugin
:
public
QObject,
public
PluginInterface
28
{
29
Q_OBJECT
30
Q_INTERFACES(
PluginInterface
)
31
Q_PLUGIN_METADATA(IID
"Falkon.Browser.plugin.AdBlock"
)
32
33
public
:
34
explicit
AdBlockPlugin
();
35
void
init
(
InitState
state
,
const
QString &settingsPath)
override
;
36
void
unload
()
override
;
37
bool
testPlugin
()
override
;
38
void
showSettings
(QWidget *parent =
nullptr
)
override
;
39
40
private
:
41
void
webPageCreated(
WebPage
*page);
42
void
webPageDeleted(
WebPage
*page);
43
void
mainWindowCreated(
BrowserWindow
*window);
44
void
mainWindowDeleted(
BrowserWindow
*window);
45
bool
acceptNavigationRequest(
WebPage
*page,
const
QUrl &url, QWebEnginePage::NavigationType type,
bool
isMainFrame)
override
;
46
47
QHash<BrowserWindow*, AdBlockIcon*> m_icons;
48
};
AdBlockIcon
Definition:
adblockicon.h:27
AdBlockPlugin
Definition:
adblockplugin.h:28
AdBlockPlugin::showSettings
void showSettings(QWidget *parent=nullptr) override
Definition:
adblockplugin.cpp:68
AdBlockPlugin::AdBlockPlugin
AdBlockPlugin()
Definition:
adblockplugin.cpp:32
AdBlockPlugin::unload
void unload() override
Definition:
adblockplugin.cpp:55
AdBlockPlugin::init
void init(InitState state, const QString &settingsPath) override
Definition:
adblockplugin.cpp:37
AdBlockPlugin::testPlugin
bool testPlugin() override
Definition:
adblockplugin.cpp:63
BrowserWindow
Definition:
browserwindow.h:58
PluginInterface
Definition:
plugininterface.h:37
PluginInterface::InitState
InitState
Definition:
plugininterface.h:39
WebPage
Definition:
webpage.h:39
plugininterface.h
state
State state
Definition:
pythonplugin.cpp:37
src
lib
adblock
adblockplugin.h
Generated by
1.9.3