diff options
| author | Luca Beltrame <[email protected]> | 2014-07-04 07:22:29 +0200 |
|---|---|---|
| committer | Luca Beltrame <[email protected]> | 2014-07-04 07:22:29 +0200 |
| commit | c640dec3f621af25ecf0424bf3197dd439077438 (patch) | |
| tree | c4e50155a526e175009b7a746628df687a22006f /src/kitemviews/kstandarditemlistwidget.cpp | |
| parent | fb9c403518fc6f0996185eac00a7f15da2f586fc (diff) | |
| parent | 20e13c31df64f5fe3dfd410a1b0a0bd78c07ba32 (diff) | |
Merge branch 'master' into frameworks
Diffstat (limited to 'src/kitemviews/kstandarditemlistwidget.cpp')
| -rw-r--r-- | src/kitemviews/kstandarditemlistwidget.cpp | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/src/kitemviews/kstandarditemlistwidget.cpp b/src/kitemviews/kstandarditemlistwidget.cpp index f7cf52484..88286120a 100644 --- a/src/kitemviews/kstandarditemlistwidget.cpp +++ b/src/kitemviews/kstandarditemlistwidget.cpp @@ -494,6 +494,29 @@ QRectF KStandardItemListWidget::textFocusRect() const return m_textRect; } +QRectF KStandardItemListWidget::selectionRect() const +{ + const_cast<KStandardItemListWidget*>(this)->triggerCacheRefreshing(); + + switch (m_layout) { + case IconsLayout: + return m_textRect; + + case CompactLayout: + case DetailsLayout: { + const int padding = styleOption().padding; + QRectF adjustedIconRect = iconRect().adjusted(-padding, -padding, padding, padding); + return adjustedIconRect | m_textRect; + } + + default: + Q_ASSERT(false); + break; + } + + return m_textRect; +} + QRectF KStandardItemListWidget::expansionToggleRect() const { const_cast<KStandardItemListWidget*>(this)->triggerCacheRefreshing(); @@ -945,7 +968,7 @@ void KStandardItemListWidget::updatePixmapCache() KIconEffect::semiTransparent(m_pixmap); } - if (isSelected()) { + if (m_layout == IconsLayout && isSelected()) { const QColor color = palette().brush(QPalette::Normal, QPalette::Highlight).color(); QImage image = m_pixmap.toImage(); KIconEffect::colorize(image, color, 0.8f); |
