[SCM] ktp-common-internals packaging branch, master, updated. debian/15.12.1-2-1839-gf0635e9
Maximiliano Curia
maxy at moszumanska.debian.org
Mon May 9 09:06:28 UTC 2016
Gitweb-URL: http://git.debian.org/?p=pkg-kde/applications/ktp-common-internals.git;a=commitdiff;h=baf35cc
The following commit has been merged in the master branch:
commit baf35cca3abcdcb33f8af93b95f0cd5a60c83115
Author: Alin M Elena <alinm.elena at gmail.com>
Date: Sat Mar 2 18:54:55 2013 +0000
added caching for transformed avatars
REVIEW: 109240
BUG: 315969
---
KTp/contact.cpp | 12 ++++++++++--
KTp/contact.h | 1 +
2 files changed, 11 insertions(+), 2 deletions(-)
diff --git a/KTp/contact.cpp b/KTp/contact.cpp
index 8a0982d..0bc891d 100644
--- a/KTp/contact.cpp
+++ b/KTp/contact.cpp
@@ -25,6 +25,7 @@
#include <QBitmap>
#include <QPixmap>
+#include <QPixmapCache>
#include <KIconLoader>
@@ -102,15 +103,18 @@ QStringList KTp::Contact::clientTypes() const
QPixmap KTp::Contact::avatarPixmap()
{
- QString file = avatarData().fileName;
QPixmap avatar;
+ QString file = avatarData().fileName;
if (file.isEmpty()) {
avatar = KIconLoader::global()->loadIcon(QLatin1String("im-user"), KIconLoader::NoGroup, 96);
} else {
avatar.load(file);
}
if (presence().type() == Tp::ConnectionPresenceTypeOffline) {
- avatarToGray(avatar);
+ if (!QPixmapCache::find(keyCache(),avatar)){
+ avatarToGray(avatar);
+ QPixmapCache::insert(keyCache(), avatar);
+ }
}
return avatar;
}
@@ -129,4 +133,8 @@ void KTp::Contact::avatarToGray(QPixmap &avatar)
avatar.setMask(alphaMask);
}
+QString KTp::Contact::keyCache() const
+{
+ return avatarToken()+QLatin1String("-offline");
+}
diff --git a/KTp/contact.h b/KTp/contact.h
index 0986f42..da4f895 100644
--- a/KTp/contact.h
+++ b/KTp/contact.h
@@ -52,6 +52,7 @@ Q_SIGNALS:
private:
void avatarToGray(QPixmap &avatar);
+ QString keyCache() const;
};
--
ktp-common-internals packaging
More information about the pkg-kde-commits
mailing list