summaryrefslogtreecommitdiffstats
path: root/examples/webenginewidgets/demobrowser/tabwidget.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'examples/webenginewidgets/demobrowser/tabwidget.cpp')
-rw-r--r--examples/webenginewidgets/demobrowser/tabwidget.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/examples/webenginewidgets/demobrowser/tabwidget.cpp b/examples/webenginewidgets/demobrowser/tabwidget.cpp
index a7e94ee62..23903e88a 100644
--- a/examples/webenginewidgets/demobrowser/tabwidget.cpp
+++ b/examples/webenginewidgets/demobrowser/tabwidget.cpp
@@ -46,6 +46,7 @@
#include "downloadmanager.h"
#include "fullscreennotification.h"
#include "history.h"
+#include "savepagedialog.h"
#include "urllineedit.h"
#include "webview.h"
@@ -883,6 +884,14 @@ bool TabWidget::restoreState(const QByteArray &state)
void TabWidget::downloadRequested(QWebEngineDownloadItem *download)
{
+ if (download->savePageFormat() != QWebEngineDownloadItem::UnknownSaveFormat) {
+ SavePageDialog dlg(this, download->savePageFormat(), download->path());
+ if (dlg.exec() != SavePageDialog::Accepted)
+ return;
+ download->setSavePageFormat(dlg.pageFormat());
+ download->setPath(dlg.filePath());
+ }
+
BrowserApplication::downloadManager()->download(download);
download->accept();
}