From dea2fad512a5625cd3aec74e869f991b334f5fa4 Mon Sep 17 00:00:00 2001 From: wmayer Date: Fri, 18 Sep 2020 13:14:09 +0200 Subject: [PATCH] Web: [skip ci] when dropping local file on StartPage then open it instead of downloading it --- src/Mod/Web/Gui/BrowserView.cpp | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/src/Mod/Web/Gui/BrowserView.cpp b/src/Mod/Web/Gui/BrowserView.cpp index 5287d4caf1..be5f3131a1 100644 --- a/src/Mod/Web/Gui/BrowserView.cpp +++ b/src/Mod/Web/Gui/BrowserView.cpp @@ -568,7 +568,15 @@ bool BrowserView::chckHostAllowed(const QString& host) #ifdef QTWEBENGINE void BrowserView::onDownloadRequested(QWebEngineDownloadItem *request) { - Gui::Dialog::DownloadManager::getInstance()->download(request->url()); + QUrl url = request->url(); + if (!url.isLocalFile()) { + request->accept(); + Gui::Dialog::DownloadManager::getInstance()->download(request->url()); + } + else { + request->cancel(); + Gui::getMainWindow()->loadUrls(App::GetApplication().getActiveDocument(), QList() << url); + } } void BrowserView::setWindowIcon(const QIcon &icon) @@ -598,7 +606,13 @@ void BrowserView::onViewSource(const QUrl &url) #else void BrowserView::onDownloadRequested(const QNetworkRequest & request) { - Gui::Dialog::DownloadManager::getInstance()->download(request); + QUrl url = request.url(); + if (!url.isLocalFile()) { + Gui::Dialog::DownloadManager::getInstance()->download(request); + } + else { + Gui::getMainWindow()->loadUrls(App::GetApplication().getActiveDocument(), QList() << url); + } } void BrowserView::onUnsupportedContent(QNetworkReply* reply)