Review Request 124811: KIconLoader: speed up hasIcon/iconPath by using the on-disk cache from loadIcon

David Faure faure at kde.org
Wed Aug 19 18:11:06 UTC 2015



> On Aug. 19, 2015, 5:52 p.m., Volker Krause wrote:
> > Sorry, this does not change the KMail case, it's still hitting the disk for the first icon of each type requested via QIcon::fromTheme, after that the in-memory cache kicks in.
> > 
> > IIUC the problem is that on the pure QIcon::fromTheme path, the icon never actually makes it into the persistent cache. If it is in there already, it is properly retrieved it seems.
> 
> David Faure wrote:
>     Ah, I think I see one. hasIcon() emulates loading the icon in size "Desktop", while kmail probably loads all its icons in size Toolbar or Small (menuitems).
>     So it doesn't match, the on-disk cache of the small-size icon doesn't help hasIcon().
>     Sounds like hasIcon needs to have its own code to lookup the cache in various sizes before hitting the disk for one of them.
>     Another patch, for another day...

s/see one/see why/


- David


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/124811/#review84060
-----------------------------------------------------------


On Aug. 19, 2015, 7:25 a.m., David Faure wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/124811/
> -----------------------------------------------------------
> 
> (Updated Aug. 19, 2015, 7:25 a.m.)
> 
> 
> Review request for KDE Frameworks, Christoph Feck and Volker Krause.
> 
> 
> Repository: kiconthemes
> 
> 
> Description
> -------
> 
> This makes QIcon::fromTheme() much faster, for all cases where we have loaded the
> icon once before (including in another process).
> 
> 
> Diffs
> -----
> 
>   autotests/kiconloader_unittest.cpp 6b60e7ebfc970c94ae865d56c4e33a8034b4fcee 
>   src/kiconloader.cpp db3aa8f8fd6f8fb706edcb27cce073c36831934d 
> 
> Diff: https://git.reviewboard.kde.org/r/124811/diff/
> 
> 
> Testing
> -------
> 
> The unittest has a way to see if KIconLoader used the cache or searched on disk, with the newly exported global int. I couldn't think of a better way.
> 
> I'll let Volker do the real-world testing and measure the overall impact as he did previously.
> 
> 
> Thanks,
> 
> David Faure
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20150819/4044f103/attachment.html>


More information about the Kde-frameworks-devel mailing list