-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/101075/#review2771
-----------------------------------------------------------


This review has been submitted with commit 
8ba86c2b6fc6f850cbc93ec59b1de6b31863e60b by David Faure.

- Commit


On April 20, 2011, 8:50 p.m., Thomas Fischer wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/101075/
> -----------------------------------------------------------
> 
> (Updated April 20, 2011, 8:50 p.m.)
> 
> 
> Review request for kdelibs.
> 
> 
> Summary
> -------
> 
> When using mimetypes instead of old-fashioned '*.txt|Text file' filters for 
> KFileDialog functions, there is no mimetype working like '*|All files'. 
> Mimetypes 'all/all' and 'all/allfiles' have no globs associated and as such 
> do not match any filenames. The current solution 'application/octet-stream' 
> works as an all-files filter, but does not behave nicely in KFileFilterCombo: 
> including this mimetype will render 'all supported files' to 'all files'.
> 
> The attached patch improves the situation as follows: if the developer adds a 
> mimetype 'all/allfiles' to his/her list of mime types for filtering in e.g. 
> KFileDialog::getOpenUrl's second parameter, function setMimeFilter recognizes 
> the request for an "all files" filter option and adds it to the list of 
> options in the combobox. This "all files", however, is not added to the "all 
> support files" option as the 'application/octet-stream' would have been. 
> Additional minor changes (moving some lines around "+= delim") were made in 
> the same function for GUI consistency reasons.
> 
> To make the patch and mimetype 'all/allfiles' working (as it has no inherent 
> glob like '*'), KDirLister has to be modified as well: just like 
> 'application/octet-stream' can act as a wildcard, so does 'all/allfiles' now.
> 
> Regarding code consistency, I am not sure why 'application/octet-stream' was 
> used as a filter; this mimetype stands IMHO for binary bulk data instead of 
> 'any/all files'. Maybe support for application/octet-stream should be marked 
> as deprecated in this situation.
> 
> If this patch does get accepted, the documentation on setMimeFilter needs to 
> be adopted to explain the use of 'all/allfiles'. Furthermore, I would suggest 
> that the documentation should suggest to prefer using mimetypes 
> ('text/plain') over manual globs ('*.txt|Text file') as it offers better 
> consistency ('*.txt|Text file' vs '*.txt|Plain Text file'), 
> internationalization etc.
> 
> 
> Diffs
> -----
> 
>   kfile/kfilefiltercombo.cpp f32a0df 
>   kio/kfile/kfiledialog.h af29a37 
>   kio/kio/kdirlister.cpp df81dc8 
> 
> Diff: http://git.reviewboard.kde.org/r/101075/diff
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Thomas
> 
>

Reply via email to