From a7f14515a48b3c124cd2dbdf85e0657e10f66c12 Mon Sep 17 00:00:00 2001 From: Andrea Diamantini Date: Fri, 19 Jun 2009 01:12:46 +0200 Subject: Restored Unsupport Content Handler (new 1st implementation) --- src/webpage.cpp | 52 ++++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 42 insertions(+), 10 deletions(-) (limited to 'src/webpage.cpp') diff --git a/src/webpage.cpp b/src/webpage.cpp index d26b54aa..27411cda 100644 --- a/src/webpage.cpp +++ b/src/webpage.cpp @@ -42,6 +42,15 @@ #include #include +#include +/*#include +#include +#include +#include +#include */ +#include +#include + #include #include @@ -123,16 +132,39 @@ KWebPage *WebPage::createWindow(QWebPage::WebWindowType type) // FIXME: implement here (perhaps) mimetype discerning && file loading (KToolInvocation??) -// void WebPage::slotHandleUnsupportedContent(QNetworkReply *reply) -// { -// -// if (reply->error() == QNetworkReply::NoError) -// { -// return slotDownloadRequested(reply->request(), reply); -// } -// -// viewErrorPage(reply); -// } +void WebPage::slotHandleUnsupportedContent(QNetworkReply *reply) +{ + + const KUrl url(reply->request().url()); + kDebug() << "title:" << url; + kDebug() << "error:" << reply->errorString(); + + QString filename = url.fileName(); + QString mimetype = reply->header(QNetworkRequest::ContentTypeHeader).toString(); + KService::Ptr offer = KMimeTypeTrader::self()->preferredService(mimetype); + + KParts::BrowserRun::AskSaveResult res = KParts::BrowserRun::askSave( + url, + offer, + mimetype, + filename + ); + switch (res) + { + case KParts::BrowserRun::Save: + slotDownloadRequested(reply->request(), reply); + return; + case KParts::BrowserRun::Cancel: + return; + default: // non existant case + break; + } + + KUrl::List list; + list.append(url); + KRun::run(*offer,url,0); + return; +} void WebPage::manageNetworkErrors(QNetworkReply* reply) -- cgit v1.2.1 From c63c6d629af685b71cabf56e339ecb80bf54caf9 Mon Sep 17 00:00:00 2001 From: Andrea Diamantini Date: Fri, 19 Jun 2009 01:13:47 +0200 Subject: Fixing webpage headers --- src/webpage.cpp | 5 ----- 1 file changed, 5 deletions(-) (limited to 'src/webpage.cpp') diff --git a/src/webpage.cpp b/src/webpage.cpp index 27411cda..39511760 100644 --- a/src/webpage.cpp +++ b/src/webpage.cpp @@ -43,11 +43,6 @@ #include #include -/*#include -#include -#include -#include -#include */ #include #include -- cgit v1.2.1 From 8e094f1119d4073e78697052397c42a90c527601 Mon Sep 17 00:00:00 2001 From: Andrea Diamantini Date: Sun, 21 Jun 2009 01:29:05 +0200 Subject: New notify system --- src/webpage.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/webpage.cpp') diff --git a/src/webpage.cpp b/src/webpage.cpp index 39511760..8c6c0d2a 100644 --- a/src/webpage.cpp +++ b/src/webpage.cpp @@ -141,7 +141,7 @@ void WebPage::slotHandleUnsupportedContent(QNetworkReply *reply) KParts::BrowserRun::AskSaveResult res = KParts::BrowserRun::askSave( url, offer, - mimetype, + mimetype, filename ); switch (res) -- cgit v1.2.1