diff options
Diffstat (limited to 'qutebrowser/browser/webengine/webenginedownloads.py')
-rw-r--r-- | qutebrowser/browser/webengine/webenginedownloads.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/qutebrowser/browser/webengine/webenginedownloads.py b/qutebrowser/browser/webengine/webenginedownloads.py index fc7ed8ca2..364347206 100644 --- a/qutebrowser/browser/webengine/webenginedownloads.py +++ b/qutebrowser/browser/webengine/webenginedownloads.py @@ -29,6 +29,7 @@ from PyQt5.QtWebEngineWidgets import QWebEngineDownloadItem from qutebrowser.browser import downloads, pdfjs from qutebrowser.utils import (debug, usertypes, message, log, objreg, urlutils, utils, version) +from qutebrowser.config import config class DownloadItem(downloads.AbstractDownloadItem): @@ -298,6 +299,15 @@ class DownloadManager(downloads.AbstractDownloadManager): qt_item.cancel() return + if (url.scheme() == "http" and + origin.isValid() and origin.scheme() == "https" and + config.instance.get("downloads.prevent_mixed_content", url=origin)): + # FIXME show failed download instead + message.error("Aborting insecure download from secure page " + "(see downloads.prevent_mixed_content).") + qt_item.cancel() + return + # Ask the user for a filename - needs to be blocking! question = downloads.get_filename_question( suggested_filename=suggested_filename, url=qt_item.url(), |