diff options
-rw-r--r-- | src/webpage.cpp | 19 |
1 files changed, 10 insertions, 9 deletions
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; |