From 2c3d919e8202aa23a9a04a1bed4dde21aed76bdb Mon Sep 17 00:00:00 2001 From: Domrachev Alexandr Date: Sun, 13 Sep 2009 20:35:41 +0400 Subject: Bugfix: when trying to open link in new tab & network request fails (no connection, etc) error page opened not only on new tab, but on tab with that link. --- src/webpage.cpp | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) (limited to 'src/webpage.cpp') diff --git a/src/webpage.cpp b/src/webpage.cpp index 274f8d60..b33d2cce 100644 --- a/src/webpage.cpp +++ b/src/webpage.cpp @@ -90,14 +90,6 @@ WebPage::~WebPage() bool WebPage::acceptNavigationRequest(QWebFrame *frame, const QNetworkRequest &request, NavigationType type) { - m_requestedUrl = request.url(); - - if (m_requestedUrl.scheme() == QLatin1String("mailto")) - { - KToolInvocation::invokeMailer(m_requestedUrl); - return false; - } - if (m_keyboardModifiers & Qt::ControlModifier || m_pressedButtons == Qt::MidButton) { Application::instance()->loadUrl(request.url(), Rekonq::SettingOpenTab); @@ -106,6 +98,14 @@ bool WebPage::acceptNavigationRequest(QWebFrame *frame, const QNetworkRequest &r return false; } + if (request.url().scheme() == QLatin1String("mailto")) + { + KToolInvocation::invokeMailer(request.url()); + return false; + } + + m_requestedUrl = request.url(); + return QWebPage::acceptNavigationRequest(frame, request, type); } @@ -178,7 +178,8 @@ void WebPage::manageNetworkErrors(QNetworkReply* reply) { if( reply->error() == QNetworkReply::NoError ) return; - + + if( reply->url() != m_requestedUrl ) // prevent favicon loading return; -- cgit v1.2.1