Review Request 120155: Correctly load non-square icons in KIconLoader
Michael Pyne
mpyne at kde.org
Fri Sep 19 15:14:13 UTC 2014
> On Sept. 12, 2014, 10:49 a.m., Christoph Feck wrote:
> > Use KPixmapSequence if you need to access an FDO animation icon.
>
> Dan Vrátil wrote:
> That's the thing: I want to feed the animation icon to KPixmapSequence, but KPixmapSequence only accepts full file path, or QPixmap. And I can't get the filename without depending on KIconTheme, which I cannot (I'm trying to add a widget to KWidgetsAddons), so the approach of getting a QPixmap from QIcon is the only way.
>
> Christoph Feck wrote:
> Could you be more specific what kind of widget you plan to add to KWidgetAddons? I would really like to know if there is a way to solve this issue without potentially breaking users expecting to get square icons inside any sized rectangle.
Right now KIconLoader does two things (among others): 1) Lookup the right path to an icon from a given icon-name, and 2) actually read in that icon and return it as a pixmap of some form. It sounds to me like we want to be able to do *only* 1) here and then let KPixmapSequence finish the process by doing 2) with its own specific method? Maybe instead of loading a non-square icon we can instead add a method that returns the resolved path to an icon-name?
- Michael
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/120155/#review66332
-----------------------------------------------------------
On Sept. 18, 2014, 8:48 p.m., Dan Vrátil wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/120155/
> -----------------------------------------------------------
>
> (Updated Sept. 18, 2014, 8:48 p.m.)
>
>
> Review request for KDE Frameworks and Christoph Feck.
>
>
> Repository: kiconthemes
>
>
> Description
> -------
>
> KIconLoader (and KIconTheme) were always using single int to specify icon size, which implies only square icons. When requesting non-square icons however (such as pixmap sequence animations), the returned QPixmap is deformed. This patch ports all internals of KIconLoader to QSize.
>
>
> Diffs
> -----
>
> src/kiconengine.cpp 530403e
> src/kiconloader.h 46d3017
> src/kiconloader.cpp 2587b46
> src/kicontheme.h ca04879
> src/kicontheme.cpp 4f0e522
>
> Diff: https://git.reviewboard.kde.org/r/120155/diff/
>
>
> Testing
> -------
>
> QIcon icon = QIcon::fromTheme(QLatin1String("process-working"));
> QPixmap pix = icon.pixmap(22, 8 * 22);
>
> With this patch, the pix looks as expected.
>
>
> Thanks,
>
> Dan Vrátil
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20140919/cad3f9da/attachment.html>
More information about the Kde-frameworks-devel
mailing list