Opinions on KIO Slave side sorting? Possible GSoC project?

Mark Gaiser markg85 at gmail.com
Sun Jan 4 20:37:21 UTC 2015


I was reading back an mailing list thread i started about half a year ago
[1]. Later on in that thread Aaron suggested a cool idea of "slave side"
sorting [2].

At that time i found it cool, but didn't really see a need for it. Dolphin
is doing a fine job at sorting anyway, so why would we bother moving it to
the KIO side. Well, a good reason for moving it to the KIO side just became
apparent to me when looking at this RR [3]. Sorting is already quite
complex in Dolphin. Adding in QCollator while also using threads makes it a
bit more nasty since a QCollator object per thread is required (hence the

Sure, the end result (and Dolphin is probably going to move there) is to
use QCollatorSortKey which will make sorting quite a bit faster [4] and
remove a QCollator requirement, but it won't be any cleaner. Quite the
opposite, It will be more complicated due to the bookkeeping required to
use QCollatorSortKey.

All this sorting stuff is quite complicated and only available in Dolphin.
Other people would need to duplicate it's efforts for the same results.
That and considering that KIO is a framework that can be used by external
(non KDE) parties made me think that having slave side sorting might be a
very good thing to have. It would allow for performance optimizations that
everyone can use and allows every KIO user to easily add sorting. It would
completely remove a need for Dolphin to have sorting and would greatly
simplify code that uses KIO.

When sorting moves to KIO, then grouping should also move to KIO imho.

The goal with this mail is to see if there is a need for slave side sorting
and how this should be used by applications wanting to use it. If there is
a demand for this then i'd like to propose to make this a GSoC project
where i volunteer to be a co-mentor.

I look forward to your opinions.

Best regards,

[1] http://mail.kde.org/pipermail/kde-frameworks-devel/2014-May/015782.html
[2] http://mail.kde.org/pipermail/kde-frameworks-devel/2014-June/016341.html
[3] https://git.reviewboard.kde.org/r/121817/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20150104/f426abbc/attachment.html>

More information about the Kde-frameworks-devel mailing list