Hello community, here is the log from the commit of package kiconthemes for openSUSE:Factory checked in at 2014-06-10 14:37:21 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/kiconthemes (Old) and /work/SRC/openSUSE:Factory/.kiconthemes.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kiconthemes" Changes: -------- --- /work/SRC/openSUSE:Factory/kiconthemes/kiconthemes.changes 2014-05-14 20:27:21.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.kiconthemes.new/kiconthemes.changes 2014-06-10 14:37:54.000000000 +0200 @@ -1,0 +2,12 @@ +Sun Jun 1 18:02:17 UTC 2014 - [email protected] + +- Update to 4.100.0 + * API improvements and cleanups + * Buildsystem fixes + * For more details please see: + http://www.kde.org/announcements/announce-frameworks5-beta3.php +- Add baselibs.conf +- Added 0001-Allow-passing-custom-theme-base-path-together-with-c.patch: + fixes non-SNI Qt icons in systray + +------------------------------------------------------------------- Old: ---- kiconthemes-4.99.0.tar.xz New: ---- 0001-Allow-passing-custom-theme-base-path-together-with-c.patch baselibs.conf kiconthemes-4.100.0.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ kiconthemes.spec ++++++ --- /var/tmp/diff_new_pack.uLSpug/_old 2014-06-10 14:37:55.000000000 +0200 +++ /var/tmp/diff_new_pack.uLSpug/_new 2014-06-10 14:37:55.000000000 +0200 @@ -18,10 +18,10 @@ %define lname libKF5IconThemes5 Name: kiconthemes -Version: 4.99.0 +Version: 4.100.0 Release: 0 BuildRequires: cmake >= 2.8.12 -BuildRequires: extra-cmake-modules >= 0.0.13 +BuildRequires: extra-cmake-modules >= 0.0.14 BuildRequires: fdupes BuildRequires: kconfigwidgets-devel >= %{_kf5_version} BuildRequires: kf5-filesystem @@ -37,7 +37,10 @@ License: LGPL-2.1+ Group: System/GUI/KDE Url: http://www.kde.org -Source0: kiconthemes-%{version}.tar.xz +Source: http://download.kde.org/unstable/frameworks/%{version}/%{name}-%{version}.tar.xz +Source1: baselibs.conf +# PATCH-FIX-UPSTREAM 0001-Allow-passing-custom-theme-base-path-together-with-c.patch +Patch0: 0001-Allow-passing-custom-theme-base-path-together-with-c.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build %description @@ -47,6 +50,7 @@ %package -n %lname Summary: Icon GUI utilities Group: System/GUI/KDE +Recommends: %lname-lang = %{version} %description -n %lname This library contains classes to improve the handling of icons @@ -67,8 +71,10 @@ This library contains classes to improve the handling of icons in applications using the KDE Frameworks. Development files. +%lang_package -n %lname %prep %setup -q +%patch0 -p1 %build %cmake_kf5 -d build @@ -78,10 +84,14 @@ %kf5_makeinstall -C build %fdupes -s %{buildroot} + %find_lang %{name}5 + %post -n %lname -p /sbin/ldconfig %postun -n %lname -p /sbin/ldconfig +%files -n %lname-lang -f %{name}5.lang + %files -n %lname %defattr(-,root,root) %doc COPYING* README* ++++++ 0001-Allow-passing-custom-theme-base-path-together-with-c.patch ++++++ >From f23fb35f2daed4671089c70f46356d74a59b6840 Mon Sep 17 00:00:00 2001 From: Martin Klapetek <[email protected]> Date: Fri, 6 Jun 2014 14:31:35 +0200 Subject: [PATCH 1/1] Allow passing custom theme base path together with custom app themes KIconTheme in kdelibs4 was searching KGlobal::dirs()->resourceDirs("data") to find all icons; the status notifier dataengine was then setting custom resourceDirs(..) with custom SNI theme paths (which the SNIs can pass) and so the SNI icons always ended up in the theme search paths (the SNI icons are stored as a whole theme). With the port to QStandardPaths, we lost the ability to pass custom dirs into the theme search paths and that results in status notifier icons in Plasma Next having "unknown" icons as their icon theme paths are not searched and so icons are not found. This is the case mostly of the Qt4 apps running on Qt with the QSystrayIcon-to-SNI-patches (case of *buntu and I heard opensuse too?) KIconLoader however has "addAppDir(..)" method, so I expanded that method to actually take an "app dir" and add it to the theme search paths. Plasma Next now have proper icons in the systray. REVIEW: 118561 --- src/kiconloader.cpp | 16 ++++++++-------- src/kiconloader.h | 8 ++++++-- src/kicontheme.cpp | 9 ++++++++- src/kicontheme.h | 4 +++- 4 files changed, 25 insertions(+), 12 deletions(-) diff --git a/src/kiconloader.cpp b/src/kiconloader.cpp index 4080a1d..6e22f3e 100644 --- a/src/kiconloader.cpp +++ b/src/kiconloader.cpp @@ -202,7 +202,7 @@ public: * @internal * Adds themes installed in the application's directory. **/ - void addAppThemes(const QString &appname); + void addAppThemes(const QString &appname, const QString &themeBaseDir = QString()); /** * @internal @@ -576,28 +576,28 @@ QStringList KIconLoader::searchPaths() const return d->searchPaths; } -void KIconLoader::addAppDir(const QString &appname) +void KIconLoader::addAppDir(const QString &appname, const QString &themeBaseDir) { d->initIconThemes(); d->searchPaths.append(appname + "/pics"); - d->addAppThemes(appname); + d->addAppThemes(appname, themeBaseDir); } -void KIconLoaderPrivate::addAppThemes(const QString &appname) +void KIconLoaderPrivate::addAppThemes(const QString &appname, const QString &themeBaseDir) { initIconThemes(); - KIconTheme *def = new KIconTheme(KIconTheme::current(), appname); + KIconTheme *def = new KIconTheme("hicolor", appname, themeBaseDir); if (!def->isValid()) { delete def; - def = new KIconTheme(KIconTheme::defaultThemeName(), appname); + def = new KIconTheme(KIconTheme::defaultThemeName(), appname, themeBaseDir); } KIconThemeNode *node = new KIconThemeNode(def); bool addedToLinks = false; - if (!mThemesInTree.contains(node->theme->internalName())) { - mThemesInTree.append(node->theme->internalName()); + if (!mThemesInTree.contains(appname)) { + mThemesInTree.append(appname); links.append(node); addedToLinks = true; } diff --git a/src/kiconloader.h b/src/kiconloader.h index 68ccd09..6168a7a 100644 --- a/src/kiconloader.h +++ b/src/kiconloader.h @@ -199,10 +199,14 @@ public: static KIconLoader *global(); /** - * Adds @p appname to the list of application specific directories. + * Adds @p appname to the list of application specific directories with @p themeBaseDir as its base directory. + * Assume the icons are in /home/user/app/icons/hicolor/48x48/my_app.png, the base directory would be + * /home/user/app/icons; KIconLoader automatically searches @p themeBaseDir + "/hicolor" + * This directory must contain a dir structure as defined by the XDG icons specification * @param appname The application name. + * @param themeBaseDir The base directory of the application's theme (eg. "/home/user/app/icons") */ - void addAppDir(const QString &appname); + void addAppDir(const QString &appname, const QString &themeBaseDir = QString()); /** * Loads an icon. It will try very hard to find an icon which is diff --git a/src/kicontheme.cpp b/src/kicontheme.cpp index 12337e8..4f0e522 100644 --- a/src/kicontheme.cpp +++ b/src/kicontheme.cpp @@ -115,7 +115,9 @@ private: QString mBaseDirThemeDir; }; -KIconTheme::KIconTheme(const QString &name, const QString &appName) + + +KIconTheme::KIconTheme(const QString &name, const QString &appName, const QString &basePathHint) : d(new KIconThemePrivate) { @@ -137,6 +139,11 @@ KIconTheme::KIconTheme(const QString &name, const QString &appName) themeDirs += cDir + '/'; } } + + if (!basePathHint.isEmpty()) { + // Checks for dir existing are done below + themeDirs += basePathHint + '/' + name + '/'; + } } // Find the theme description file. These are always global. diff --git a/src/kicontheme.h b/src/kicontheme.h index 73011e2..ca04879 100644 --- a/src/kicontheme.h +++ b/src/kicontheme.h @@ -50,8 +50,10 @@ public: * @param name the name of the theme (e.g. "hicolor" or "keramik") * @param appName the name of the application. Can be null. This argument * allows applications to have themed application icons. + * @param basePathHint optional hint where to search the app themes. + * This is appended at the end of the search paths */ - explicit KIconTheme(const QString &name, const QString &appName = QString()); + explicit KIconTheme(const QString &name, const QString &appName = QString(), const QString &basePathHint = QString()); ~KIconTheme(); /** -- 1.9.3 ++++++ baselibs.conf ++++++ libKF5IconThemes5 kiconthemes-devel requires "libKF5IconThemes5-<targettype> = <version>" ++++++ kiconthemes-4.99.0.tar.xz -> kiconthemes-4.100.0.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiconthemes-4.99.0/CMakeLists.txt new/kiconthemes-4.100.0/CMakeLists.txt --- old/kiconthemes-4.99.0/CMakeLists.txt 2014-05-05 02:26:37.000000000 +0200 +++ new/kiconthemes-4.100.0/CMakeLists.txt 2014-06-01 14:20:21.000000000 +0200 @@ -3,7 +3,7 @@ project(KIconThemes) # ECM setup -find_package(ECM 0.0.13 REQUIRED NO_MODULE) +find_package(ECM 0.0.14 REQUIRED NO_MODULE) set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR}) include(KDEInstallDirs) @@ -15,8 +15,8 @@ include(ECMGenerateHeaders) include(ECMMarkNonGuiExecutable) -set(KF5_VERSION "4.99.0") # handled by release scripts -set(KF5_DEP_VERSION "4.99.0") # handled by release scripts +set(KF5_VERSION "4.100.0") # handled by release scripts +set(KF5_DEP_VERSION "4.100.0") # handled by release scripts ecm_setup_version(${KF5_VERSION} VARIABLE_PREFIX KICONTHEMES @@ -40,6 +40,9 @@ remove_definitions(-DQT_NO_CAST_FROM_BYTEARRAY) add_definitions(-DTRANSLATION_DOMAIN=\"kiconthemes5\") +if (IS_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/po") + ki18n_install(po) +endif() add_subdirectory(src) add_subdirectory(tests) add_subdirectory(autotests) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiconthemes-4.99.0/autotests/CMakeLists.txt new/kiconthemes-4.100.0/autotests/CMakeLists.txt --- old/kiconthemes-4.99.0/autotests/CMakeLists.txt 2014-05-05 02:26:37.000000000 +0200 +++ new/kiconthemes-4.100.0/autotests/CMakeLists.txt 2014-06-01 14:20:21.000000000 +0200 @@ -1,16 +1,13 @@ find_package(Qt5 5.2.0 CONFIG REQUIRED Test) -include(ECMMarkAsTest) +include(ECMAddTests) macro(KICONTHEMES_TESTS) foreach(_testname ${ARGN}) set(_srcs ${_testname}.cpp) qt5_add_resources(_srcs resources.qrc) - add_executable(${_testname} ${_srcs}) - add_test(kiconthemes-${_testname} ${_testname}) - ecm_mark_as_test(${_testname}) - target_link_libraries(${_testname} Qt5::Test KF5::IconThemes KF5::WidgetsAddons) + ecm_add_test(${_srcs} TEST_NAME kiconthemes-${_testname} LINK_LIBRARIES Qt5::Test KF5::IconThemes KF5::WidgetsAddons) endforeach(_testname) endmacro() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiconthemes-4.99.0/po/nds/kiconthemes5.po new/kiconthemes-4.100.0/po/nds/kiconthemes5.po --- old/kiconthemes-4.99.0/po/nds/kiconthemes5.po 2014-05-05 02:26:37.000000000 +0200 +++ new/kiconthemes-4.100.0/po/nds/kiconthemes5.po 2014-06-01 14:20:21.000000000 +0200 @@ -17,7 +17,7 @@ "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: Lokalize 1.5\n" +"X-Generator: Lokalize 1.4\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" #: kicondialog.cpp:240 kicondialog.cpp:250 kicondialog.cpp:589 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiconthemes-4.99.0/po/uk/kiconthemes5.po new/kiconthemes-4.100.0/po/uk/kiconthemes5.po --- old/kiconthemes-4.99.0/po/uk/kiconthemes5.po 2014-05-05 02:26:37.000000000 +0200 +++ new/kiconthemes-4.100.0/po/uk/kiconthemes5.po 2014-06-01 14:20:21.000000000 +0200 @@ -132,7 +132,7 @@ #~ msgid "Do you really want to delete this item?" #~ msgid_plural "Do you really want to delete these %1 items?" -#~ msgstr[0] "Дійсно вилучити цей %1 об’єкт?" +#~ msgstr[0] "Дійсно вилучити цей об’єкт?" #~ msgstr[1] "Дійсно вилучити ці %1 об’єкти?" #~ msgstr[2] "Дійсно вилучити ці %1 об’єктів?" #~ msgstr[3] "Дійсно вилучити цей об’єкт?" @@ -1050,8 +1050,8 @@ #~ "<p>You received %1 cookies from<br/><b>%2%3</b><br/>Do you want to accept " #~ "or reject these cookies?</p>" #~ msgstr[0] "" -#~ "<p>Отримано %1 куку від<br/><b>%2%3</b><br/>Прийняти чи відкинути ці куки?" -#~ "</p>" +#~ "<p>Отримано куку від<br/><b>%2%3</b><br/>Прийняти чи відкинути цю куку?</" +#~ "p>" #~ msgstr[1] "" #~ "<p>Отримано %1 куки від<br/><b>%2%3</b><br/>Прийняти чи відкинути ці куки?" #~ "</p>" @@ -1444,7 +1444,7 @@ #~ msgctxt "@item:intable" #~ msgid "%1 item" #~ msgid_plural "%1 items" -#~ msgstr[0] "%1 об’єкт" +#~ msgstr[0] "1 об’єкт" #~ msgstr[1] "%1 об’єкти" #~ msgstr[2] "%1 об’єктів" #~ msgstr[3] "1 об’єкт" @@ -2215,7 +2215,7 @@ #~ msgid "Properties for 1 item" #~ msgid_plural "Properties for %1 Selected Items" -#~ msgstr[0] "Властивості %1 позначеного об’єкта" +#~ msgstr[0] "Властивості позначеного об’єкта" #~ msgstr[1] "Властивості %1 позначених об’єктів" #~ msgstr[2] "Властивості %1 позначених об’єктів" #~ msgstr[3] "Властивості позначеного об’єкта" @@ -2282,14 +2282,14 @@ #~ msgid "1 file" #~ msgid_plural "%1 files" -#~ msgstr[0] "%1 файл" +#~ msgstr[0] "1 файл" #~ msgstr[1] "%1 файли" #~ msgstr[2] "%1 файлів" #~ msgstr[3] "1 файл" #~ msgid "1 sub-folder" #~ msgid_plural "%1 sub-folders" -#~ msgstr[0] "%1 підтека" +#~ msgstr[0] "1 підтека" #~ msgstr[1] "%1 підтеки" #~ msgstr[2] "%1 підтек" #~ msgstr[3] "1 підтека" @@ -2340,7 +2340,7 @@ #~ msgid "This file is a link and does not have permissions." #~ msgid_plural "All files are links and do not have permissions." #~ msgstr[0] "" -#~ "Ці файли є символічними посиланнями. Посилання не мають прав доступу." +#~ "Цей файл є символічним посиланням. Посилання не мають прав доступу." #~ msgstr[1] "" #~ "Ці файли є символічними посиланнями. Посилання не мають прав доступу." #~ msgstr[2] "" @@ -2548,14 +2548,14 @@ #~ msgid "This file uses advanced permissions" #~ msgid_plural "These files use advanced permissions." -#~ msgstr[0] "Ці файли використовують розширені права доступу." +#~ msgstr[0] "Цей файл використовує розширені права доступу." #~ msgstr[1] "Ці файли використовують розширені права доступу." #~ msgstr[2] "Ці файли використовують розширені права доступу." #~ msgstr[3] "Цей файл використовує розширені права доступу." #~ msgid "This folder uses advanced permissions." #~ msgid_plural "These folders use advanced permissions." -#~ msgstr[0] "Ці теки використовують розширені права доступу." +#~ msgstr[0] "Ця тека використовує розширені права доступу." #~ msgstr[1] "Ці теки використовують розширені права доступу." #~ msgstr[2] "Ці теки використовують розширені права доступу." #~ msgstr[3] "Ця тека використовує розширені права доступу." @@ -2700,7 +2700,7 @@ #~ msgid "1 day %2" #~ msgid_plural "%1 days %2" -#~ msgstr[0] "%1 день %2" +#~ msgstr[0] "1 день %2" #~ msgstr[1] "%1 дні %2" #~ msgstr[2] "%1 днів %2" #~ msgstr[3] "1 день %2" @@ -2714,14 +2714,14 @@ #~ msgid "1 Folder" #~ msgid_plural "%1 Folders" -#~ msgstr[0] "%1 тека" +#~ msgstr[0] "1 тека" #~ msgstr[1] "%1 теки" #~ msgstr[2] "%1 тек" #~ msgstr[3] "1 тека" #~ msgid "1 File" #~ msgid_plural "%1 Files" -#~ msgstr[0] "%1 файл" +#~ msgstr[0] "1 файл" #~ msgstr[1] "%1 файли" #~ msgstr[2] "%1 файлів" #~ msgstr[3] "1 файл" @@ -4154,7 +4154,7 @@ #~ msgid "Do you really want to move this item to the trash?" #~ msgid_plural "Do you really want to move these %1 items to the trash?" -#~ msgstr[0] "Дійсно пересунути цей %1 об’єкт у смітник?" +#~ msgstr[0] "Дійсно пересунути цей об’єкт у смітник?" #~ msgstr[1] "Дійсно пересунути ці %1 об’єкти у смітник?" #~ msgstr[2] "Дійсно пересунути ці %1 об’єктів у смітник?" #~ msgstr[3] "Дійсно пересунути цей об’єкт у смітник?" @@ -4431,14 +4431,14 @@ #~ msgid "&Paste File" #~ msgid_plural "&Paste %1 Files" -#~ msgstr[0] "&Вставити %1 файл" +#~ msgstr[0] "&Вставити файл" #~ msgstr[1] "&Вставити %1 файли" #~ msgstr[2] "&Вставити %1 файлів" #~ msgstr[3] "&Вставити файл" #~ msgid "&Paste URL" #~ msgid_plural "&Paste %1 URLs" -#~ msgstr[0] "&Вставити %1 адресу" +#~ msgstr[0] "&Вставити адресу" #~ msgstr[1] "&Вставити %1 адреси" #~ msgstr[2] "&Вставити %1 адрес" #~ msgstr[3] "&Вставити адресу" @@ -5129,7 +5129,7 @@ #~ msgctxt "Part of: %1, using %2 bits of a %3 bit key" #~ msgid "using %1 bit" #~ msgid_plural "using %1 bits" -#~ msgstr[0] "використано %1 біт" +#~ msgstr[0] "використано один біт" #~ msgstr[1] "використано %1 біти" #~ msgstr[2] "використано %1 бітів" #~ msgstr[3] "використано один біт" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiconthemes-4.99.0/po/x-test/kiconthemes5.po new/kiconthemes-4.100.0/po/x-test/kiconthemes5.po --- old/kiconthemes-4.99.0/po/x-test/kiconthemes5.po 2014-05-05 02:26:37.000000000 +0200 +++ new/kiconthemes-4.100.0/po/x-test/kiconthemes5.po 1970-01-01 01:00:00.000000000 +0100 @@ -1,99 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR This_file_is_part_of_KDE -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. -# -# -msgid "" -msgstr "" -"Project-Id-Version: kiconthemes5\n" -"Report-Msgid-Bugs-To: http://bugs.kde.org\n" -"POT-Creation-Date: 2014-04-27 20:57+0000\n" -"PO-Revision-Date: 2014-04-27 21:05+0000\n" -"Last-Translator: transxx.py program <[email protected]>\n" -"Language-Team: KDE Test Language <[email protected]>\n" -"Language: x-test\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=1; plural=0;\n" - -#: kicondialog.cpp:240 kicondialog.cpp:250 kicondialog.cpp:589 -msgid "Select Icon" -msgstr "xxSelect Iconxx" - -#: kicondialog.cpp:265 -msgid "Icon Source" -msgstr "xxIcon Sourcexx" - -#: kicondialog.cpp:274 -msgid "S&ystem icons:" -msgstr "xxS&ystem icons:xx" - -#: kicondialog.cpp:281 -msgid "O&ther icons:" -msgstr "xxO&ther icons:xx" - -#: kicondialog.cpp:284 -msgid "&Browse..." -msgstr "xx&Browse...xx" - -#: kicondialog.cpp:295 -msgid "&Search:" -msgstr "xx&Search:xx" - -#: kicondialog.cpp:302 -msgid "Search interactively for icon names (e.g. folder)." -msgstr "xxSearch interactively for icon names (e.g. folder).xx" - -#: kicondialog.cpp:332 -msgid "Actions" -msgstr "xxActionsxx" - -#: kicondialog.cpp:333 -msgid "Animations" -msgstr "xxAnimationsxx" - -#: kicondialog.cpp:334 -msgid "Applications" -msgstr "xxApplicationsxx" - -#: kicondialog.cpp:335 -msgid "Categories" -msgstr "xxCategoriesxx" - -#: kicondialog.cpp:336 -msgid "Devices" -msgstr "xxDevicesxx" - -#: kicondialog.cpp:337 -msgid "Emblems" -msgstr "xxEmblemsxx" - -#: kicondialog.cpp:338 -msgid "Emotes" -msgstr "xxEmotesxx" - -#: kicondialog.cpp:339 -msgid "Filesystems" -msgstr "xxFilesystemsxx" - -#: kicondialog.cpp:340 -msgid "International" -msgstr "xxInternationalxx" - -#: kicondialog.cpp:341 -msgid "Mimetypes" -msgstr "xxMimetypesxx" - -#: kicondialog.cpp:342 -msgid "Places" -msgstr "xxPlacesxx" - -#: kicondialog.cpp:343 -msgid "Status" -msgstr "xxStatusxx" - -#: kicondialog.cpp:589 -msgid "*.png *.xpm *.svg *.svgz|Icon Files (*.png *.xpm *.svg *.svgz)" -msgstr "xx*.png *.xpm *.svg *.svgz|Icon Files (*.png *.xpm *.svg *.svgz)xx" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiconthemes-4.99.0/src/kiconloader.cpp new/kiconthemes-4.100.0/src/kiconloader.cpp --- old/kiconthemes-4.99.0/src/kiconloader.cpp 2014-05-05 02:26:37.000000000 +0200 +++ new/kiconthemes-4.100.0/src/kiconloader.cpp 2014-06-01 14:20:21.000000000 +0200 @@ -140,7 +140,6 @@ struct KIconGroup { int size; - bool alphaBlending; }; /*** d pointer for KIconLoader. ***/ @@ -501,7 +500,7 @@ // smaller. mPixmapCache.setMaxCost(10 * 1024 * 1024); - // These have to match the order in kicontheme.h + // These have to match the order in kiconloader.h static const char *const groups[] = { "Desktop", "Toolbar", "MainToolbar", "Small", "Panel", "Dialog", 0L }; KSharedConfig::Ptr config = KSharedConfig::openConfig(); @@ -516,11 +515,6 @@ KConfigGroup cg(config, QLatin1String(groups[i]) + "Icons"); mpGroups[i].size = cg.readEntry("Size", 0); - if (QPixmap::defaultDepth() > 8) { - mpGroups[i].alphaBlending = cg.readEntry("AlphaBlending", true); - } else { - mpGroups[i].alphaBlending = false; - } if (!mpGroups[i].size && defaultSizesTheme) { mpGroups[i].size = defaultSizesTheme->defaultSize(i); @@ -1505,7 +1499,7 @@ qDebug() << "Illegal icon group:" << group; return false; } - return d->mpGroups[group].alphaBlending; + return true; } // deprecated diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/kiconthemes-4.99.0/src/kicontheme.cpp new/kiconthemes-4.100.0/src/kicontheme.cpp --- old/kiconthemes-4.99.0/src/kicontheme.cpp 2014-05-05 02:26:37.000000000 +0200 +++ new/kiconthemes-4.100.0/src/kicontheme.cpp 2014-06-01 14:20:21.000000000 +0200 @@ -417,6 +417,7 @@ QString KIconTheme::iconPath(const QString &name, int size, KIconLoader::MatchType match) const { QString path; + QString tempPath; // used to cache icon path if it exists int delta = -INT_MAX; // current icon size delta of 'icon' int dw = INT_MAX; // icon size delta of current directory KIconThemeDir *dir; @@ -477,10 +478,13 @@ } } - path = dir->iconPath(name); - if (path.isEmpty()) { + // cache the result of iconPath() call which checks if file exists + tempPath = dir->iconPath(name); + + if (tempPath.isEmpty()) { continue; } + path = tempPath; // if we got in MatchExact that far, we find no better if (match == KIconLoader::MatchExact) { -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
