-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://svn.reviewboard.kde.org/r/6183/
-----------------------------------------------------------

(Updated 2011-01-03 03:49:54.352914)


Review request for kdelibs and Andrea Diamantini.


Changes
-------

Updated the previous version of the patch as follows:

- Handle the case where downloadResponse is called because of a 
content-disposition header for a text/html content. Note the fix for this case 
is really a hack based on what Konqueror does in its KonqMainWindow class. I 
just do not see any better way to handle this better at this point unless, I 
implement my own dialog to prompt the user for the desired action take on 
unsupported content.

- Remove the ioslave on hold if the application selected to open the content in 
downloadResponse is a non-KDE application.

- Avoid unnecessary copying when setting the kio meta-data in 
KIO::AccessManager.


Summary
-------

The attached patch fixes a long standing issue in the KIO-QNAM class where 
actions that require putting an ioslave on hold currently do not work. In 
kdewebkit, which uses this integration class, such actions always occur when 
you click on a link that cannot be directly handled by the browsing engine. For 
example, clicking on a link that points to a PDF link. Even worse is when the 
link you click on results in an http POST which returns content. In such cases, 
apps that rely on kdewebkit and hence the KIO-QNAM bridge class have no way of 
putting an ioslave on hold as stated in KIO::get's documentation in order to 
properly deal with content types they do not support.

The attached patch along with another pending against kio_http, 
http://reviewboard.kde.org/r/6182/, remedies this issue by adding a means to 
put replies on hold and fixing the downloadResponse slot in KWebPage to do the 
right thing.


Diffs (updated)
-----

  trunk/KDE/kdelibs/kdewebkit/ISSUES 1211077 
  trunk/KDE/kdelibs/kdewebkit/kwebpage.h 1211077 
  trunk/KDE/kdelibs/kdewebkit/kwebpage.cpp 1211077 
  trunk/KDE/kdelibs/kio/kio/accessmanager.h 1211077 
  trunk/KDE/kdelibs/kio/kio/accessmanager.cpp 1211077 
  trunk/KDE/kdelibs/kio/kio/accessmanagerreply_p.h 1211077 
  trunk/KDE/kdelibs/kio/kio/accessmanagerreply_p.cpp 1211077 

Diff: http://svn.reviewboard.kde.org/r/6183/diff


Testing
-------


Thanks,

Dawit

Reply via email to