Summary: | Some icons with "semi transparent" effect (disabled) get checkered pattern | ||
---|---|---|---|
Product: | [Unmaintained] kdelibs | Reporter: | David Benjamin <davidben> |
Component: | kdeui | Assignee: | kdelibs bugs <kdelibs-bugs> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | cfeck |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Compiled Sources | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: | |||
Attachments: |
screenshot
Checkered icons on Okular menu (Plastique style) |
Description
David Benjamin
2008-07-01 05:19:02 UTC
Created attachment 25753 [details]
screenshot
I changed the title of the bug report to better describe the issue. I see this effect also on some icons with Plastique style and Okular menu, and I _think_ Oxygen explicitely worked around this bug by not using the KDE's icon effects for the menu icons. I digged into the KDE sources to find the cause. As far as I understand, kiconeffect.cpp uses QApplication::desktop()->paintEngine()->hasFeature(QPaintEngine::Antialiasing) to find out if it should apply the bitmap mask, or use alpha transparency. It looks like this call does not consistently return true, or paintEngine() is NULL, but that seems to depend on some internal state of the widget. I don't even know if it is valid to call this function on the engine without having a valid painter. What's strange: It looks like it depends on the icon, so my other theory is that some PNGs are created differently. Created attachment 32381 [details]
Checkered icons on Okular menu (Plastique style)
SVN commit 945882 by cfeck: Use alpha channel for semi transparent 8 bit icons I was long looking at this bug, but did not find the culprit until I fired Okteta and looked at the PNG files. Some icons are optimized to palettized mode (8 bit icons), and this made KIconEffect use the ugly checked pattern. BUG: 165460 M +12 -0 kiconeffect.cpp WebSVN link: http://websvn.kde.org/?view=rev&revision=945882 SVN commit 945888 by cfeck: backport r945882 CCBUG: 165460 M +12 -0 kiconeffect.cpp WebSVN link: http://websvn.kde.org/?view=rev&revision=945888 |