From eae3987fe52ba78361488866bc1bf40be54c2aed Mon Sep 17 00:00:00 2001 From: Aqua-sama Date: Fri, 30 Mar 2018 09:19:12 +0200 Subject: More informative SSL error message --- src/webengine/webpage.cpp | 27 ++++++++++++++++++++++----- 1 file changed, 22 insertions(+), 5 deletions(-) (limited to 'src/webengine/webpage.cpp') diff --git a/src/webengine/webpage.cpp b/src/webengine/webpage.cpp index 7a2a5e7..79bf328 100644 --- a/src/webengine/webpage.cpp +++ b/src/webengine/webpage.cpp @@ -7,7 +7,6 @@ */ #include "webpage.h" - #include #include @@ -26,10 +25,28 @@ WebPage::WebPage(QWebEngineProfile *profile, QObject *parent) bool WebPage::certificateError(const QWebEngineCertificateError &certificateError) { - auto resp = QMessageBox::warning(nullptr, - tr("SSL error"), - tr("An SSL error has occurred:
%1").arg(certificateError.errorDescription()), - QMessageBox::Ignore, QMessageBox::Abort); + QMessageBox messageBox; + + messageBox.setWindowTitle(tr("SSL Error")); + if(certificateError.isOverridable()) + messageBox.setIcon(QMessageBox::Warning); + else + messageBox.setIcon(QMessageBox::Critical); + + messageBox.setText(tr("An SSL error has occurred on %1").arg(certificateError.url().toString())); + messageBox.setInformativeText(tr("

%1

" + "

This error %2 be overridden.

") + .arg(certificateError.errorDescription(), + certificateError.isOverridable() ? tr("can") : tr("cannot"))); + messageBox.setDetailedText(tr("Error code: %1").arg(certificateError.error())); + + if(certificateError.isOverridable()) { + messageBox.setStandardButtons(QMessageBox::Ignore | QMessageBox::Abort); + messageBox.setDefaultButton(QMessageBox::Ignore); + } else + messageBox.setStandardButtons(QMessageBox::Abort); + + auto resp = messageBox.exec(); return resp == QMessageBox::Ignore; } -- cgit v1.2.1