[SCM] ktp-contact-list packaging branch, master, updated. debian/15.12.1-2-1070-g6c56f91
Maximiliano Curia
maxy at moszumanska.debian.org
Sat May 28 00:15:05 UTC 2016
Gitweb-URL: http://git.debian.org/?p=pkg-kde/applications/ktp-contact-list.git;a=commitdiff;h=ac812a4
The following commit has been merged in the master branch:
commit ac812a46cecf8487a48fcf78dd799cfb89867051
Author: Martin Klapetek <mklapetek at kde.org>
Date: Sat Jan 31 00:27:09 2015 +0100
Put the grayscale avatars into QPixmapCache
This avoids desaturating them every time when requested. This however
makes scrolling the contact list a bit slower, maybe it should be moved
elsewhere...
---
contact-delegate-compact.cpp | 8 +++++++-
contact-delegate.cpp | 8 ++++++--
2 files changed, 13 insertions(+), 3 deletions(-)
diff --git a/contact-delegate-compact.cpp b/contact-delegate-compact.cpp
index 244c579..2be03dd 100644
--- a/contact-delegate-compact.cpp
+++ b/contact-delegate-compact.cpp
@@ -28,6 +28,8 @@
#include <QStyle>
#include <QHelpEvent>
#include <QFontDatabase>
+#include <QPixmapCache>
+#include <QCryptographicHash>
#include <KIconLoader>
@@ -37,6 +39,7 @@ ContactDelegateCompact::ContactDelegateCompact(ContactDelegateCompact::ListSize
: AbstractContactDelegate(parent)
{
setListMode(size);
+ QPixmapCache::setCacheLimit(102400);
}
ContactDelegateCompact::~ContactDelegateCompact()
@@ -71,7 +74,10 @@ void ContactDelegateCompact::paintContact(QPainter *painter, const QStyleOptionV
//if the contact is offline, gray it out
if (index.data(KTp::ContactPresenceTypeRole).toUInt() == Tp::ConnectionPresenceTypeOffline) {
- avatarToGray(avatar);
+ if (!QPixmapCache::find(index.data(KTp::IdRole).toString() + QStringLiteral("gray"), &avatar)) {
+ avatarToGray(avatar);
+ QPixmapCache::insert(index.data(KTp::IdRole).toString() + QStringLiteral("gray"), avatar);
+ }
}
if (!avatar.isNull()) {
diff --git a/contact-delegate.cpp b/contact-delegate.cpp
index 8d80779..e161283 100644
--- a/contact-delegate.cpp
+++ b/contact-delegate.cpp
@@ -27,6 +27,7 @@
#include <QPainterPath>
#include <QApplication>
#include <QFontDatabase>
+#include <QPixmapCache>
#include <QStyle>
#include <KIconLoader>
@@ -40,7 +41,7 @@ ContactDelegate::ContactDelegate(QObject * parent)
, m_presenceIconSize(IconSize(KIconLoader::Toolbar))
, m_spacing(IconSize(KIconLoader::Dialog) / 8)
{
-
+ QPixmapCache::setCacheLimit(102400);
}
ContactDelegate::~ContactDelegate()
@@ -78,7 +79,10 @@ void ContactDelegate::paintContact(QPainter *painter, const QStyleOptionViewItem
//if the contact is offline, gray it out
if (index.data(KTp::ContactPresenceTypeRole).toUInt() == Tp::ConnectionPresenceTypeOffline) {
- avatarToGray(avatar);
+ if (!QPixmapCache::find(index.data(KTp::IdRole).toString() + QStringLiteral("gray"), &avatar)) {
+ avatarToGray(avatar);
+ QPixmapCache::insert(index.data(KTp::IdRole).toString() + QStringLiteral("gray"), avatar);
+ }
}
if (!avatar.isNull()) {
--
ktp-contact-list packaging
More information about the pkg-kde-commits
mailing list