Search
SailfishOS Open Build Service
>
Projects
>
home:kaltsi
:
tnhlbug
>
qt
> 0006-Description-Make-it-so-that-the-QIcon-loader-honors-.patch
Log In
Username
Password
Cancel
Overview
Repositories
Revisions
Requests
Users
Advanced
Attributes
Meta
File 0006-Description-Make-it-so-that-the-QIcon-loader-honors-.patch of Package qt
From 95b2828327ce946534016dcd65c29e70d730ced1 Mon Sep 17 00:00:00 2001 From: Robin Burchell <robin.burchell@collabora.com> Date: Sun, 13 Nov 2011 12:33:38 +0100 Subject: [PATCH 06/29] Description: Make it so that the QIcon loader honors /usr/share/pixmaps directory. This is a valid directory per the Freedesktop.org icon theme specification. Bug: http://bugreports.qt.nokia.com/browse/QTBUG-12874 Author: Kaitlin Rupert <kaitlin.rupert@intel.com> --- src/gui/image/qiconloader.cpp | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/src/gui/image/qiconloader.cpp b/src/gui/image/qiconloader.cpp index f064312..b186e34 100644 --- a/src/gui/image/qiconloader.cpp +++ b/src/gui/image/qiconloader.cpp @@ -292,6 +292,30 @@ QThemeIconEntries QIconLoader::findIconHelper(const QString &themeName, break; } } + +#ifdef Q_OS_LINUX + /* Freedesktop standard says to look in /usr/share/pixmaps last */ + if (entries.isEmpty()) { + const QString pixmaps(QLatin1String("/usr/share/pixmaps")); + + QDir currentDir(pixmaps); + if (currentDir.exists(iconName + pngext)) { + PixmapEntry *iconEntry = new PixmapEntry; + iconEntry->dir = pixmaps; + iconEntry->filename = currentDir.filePath(iconName + pngext); + // Notice we ensure that pixmap entries allways come before + // scalable to preserve search order afterwards + entries.prepend(iconEntry); + } else if (m_supportsSvg && + currentDir.exists(iconName + svgext)) { + ScalableEntry *iconEntry = new ScalableEntry; + iconEntry->dir = pixmaps; + iconEntry->filename = currentDir.filePath(iconName + svgext); + entries.append(iconEntry); + } + } +#endif + return entries; } -- 1.7.10.3