From fc7ec7a877ce088d0ed9879af5791b3c3e3ee241 Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Fri, 7 Jul 2017 16:15:55 +0200 Subject: Block downloads with user feedback --- src/webview.h | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) (limited to 'src/webview.h') diff --git a/src/webview.h b/src/webview.h index 753c984..9d7e28d 100644 --- a/src/webview.h +++ b/src/webview.h @@ -3,6 +3,10 @@ #include #include +#include + +class QNetworkReply; +class QTimer; /** * Make sure pages that want to load in a new tab are actually loaded in the same page, @@ -10,19 +14,28 @@ */ class WebView : public QWebView { - Q_OBJECT +Q_OBJECT public: - WebView(QWidget* parent = NULL) : QWebView(parent) { - connect(page(), SIGNAL(windowCloseRequested()), this, SLOT(windowCloseRequested())); + WebView(QWidget* parent = NULL); + bool wasAbortedDownload() { + bool r = _abortedDownload; + _abortedDownload = false; + return r; } + protected: QWebView *createWindow(QWebPage::WebWindowType); protected slots: void windowCloseRequested(); + void unsupportedContent(QNetworkReply*); + void downloadRequest(QNetworkRequest); + void downloadDeniedMessage(); private: QStack _urls; + QTimer *_timer; + bool _abortedDownload; }; #endif -- cgit v1.2.3-55-g7522