diff options
Diffstat (limited to 'src/webengine')
-rw-r--r-- | src/webengine/webview.cpp | 39 | ||||
-rw-r--r-- | src/webengine/webview.h | 40 |
2 files changed, 79 insertions, 0 deletions
diff --git a/src/webengine/webview.cpp b/src/webengine/webview.cpp new file mode 100644 index 0000000..71708b7 --- /dev/null +++ b/src/webengine/webview.cpp @@ -0,0 +1,39 @@ +/** LICENSE ******************************************************************** + ** + ** smolbote: yet another qute browser + ** Copyright (C) 2017 Xian Nox + ** + ** 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 3 of the License, or + ** (at your option) any later version. + ** + ** 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 "webview.h" +#include <QWebEnginePage> + +WebView::WebView(QWidget *parent) : + QWebEngineView(parent) +{ +} + +void WebView::setPage(QWebEnginePage *page) +{ + disconnect(this->page(), SIGNAL(linkHovered(QString)), this, SLOT(handleLinkHovered(QString))); + connect(page, SIGNAL(linkHovered(QString)), this, SLOT(handleLinkHovered(QString))); + QWebEngineView::setPage(page); +} + +void WebView::handleLinkHovered(const QString &url) +{ + emit linkHovered(url); +} diff --git a/src/webengine/webview.h b/src/webengine/webview.h new file mode 100644 index 0000000..c833067 --- /dev/null +++ b/src/webengine/webview.h @@ -0,0 +1,40 @@ +/** LICENSE ******************************************************************** + ** + ** smolbote: yet another qute browser + ** Copyright (C) 2017 Xian Nox + ** + ** 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 3 of the License, or + ** (at your option) any later version. + ** + ** 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 WEBVIEW_H +#define WEBVIEW_H + +#include <QWebEngineView> + +class WebView : public QWebEngineView +{ + Q_OBJECT +public: + explicit WebView(QWidget *parent = 0); + void setPage(QWebEnginePage *page); + +signals: + void linkHovered(const QString &url); + +private slots: + void handleLinkHovered(const QString &url); +}; + +#endif // WEBVIEW_H |