a452e22546
The logic for invalidating a theme QIcon when the platform theme changed, or when the user set an explicit icon theme, was tied to QIconLoaderEngine, so any platform theme implementing QPlatformTheme::createIconEngine() with a custom icon engine would not take part in this cache invalidation. As we want users of QIcon::fromTheme to be agnostic to where the icon is actually coming from, and have a consistent behavior for the various QIcon APIs for setting explicit themes, the logic for invalidating the themed icon has now been moved up one layer, to a new QThemeIconEngine, that is responsible for lazily creating the actual engine based on the name. The engine proxies the actual icon loading through to the real engine via a new QProxyIconEngine helper class. Pick-to: 6.6 Change-Id: I474589981f751d7467e3073533cba542182f2d36 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Axel Spoerl <axel.spoerl@qt.io> |
||
---|---|---|
.github/workflows | ||
bin | ||
cmake | ||
coin | ||
config.tests | ||
dist | ||
doc | ||
examples | ||
lib | ||
libexec | ||
LICENSES | ||
mkspecs | ||
qmake | ||
src | ||
tests | ||
util | ||
.cmake.conf | ||
.gitattributes | ||
.gitignore | ||
.lgtm.yml | ||
.tag | ||
CMakeLists.txt | ||
config_help.txt | ||
configure | ||
configure.bat | ||
configure.cmake | ||
dependencies.yaml | ||
qt_cmdline.cmake | ||
sync.profile |