X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/c8d8556950005dfd96ebdb41d2f43ad90356367c..7f0aaff9b5d5f1527587dfd68d3b42e020a21122:/src/kitemviews/kitemlistwidget.cpp diff --git a/src/kitemviews/kitemlistwidget.cpp b/src/kitemviews/kitemlistwidget.cpp index 61e06078b..3d593f76f 100644 --- a/src/kitemviews/kitemlistwidget.cpp +++ b/src/kitemviews/kitemlistwidget.cpp @@ -28,6 +28,7 @@ #include +#include #include #include #include @@ -132,7 +133,7 @@ void KItemListWidget::paint(QPainter* painter, const QStyleOptionGraphicsItem* o focusRectOption.rect = textBounds.adjusted(1, 1, -1, -1); } - focusRectOption.state = QStyle::State_Enabled | QStyle::State_Item; + focusRectOption.state = QStyle::State_Enabled | QStyle::State_Item | QStyle::State_KeyboardFocusChange; if (m_selected) { focusRectOption.state |= QStyle::State_Selected; } @@ -243,7 +244,8 @@ void KItemListWidget::setHovered(bool hovered) if (!m_hoverAnimation) { m_hoverAnimation = new QPropertyAnimation(this, "hoverOpacity", this); - m_hoverAnimation->setDuration(200); + const int duration = (KGlobalSettings::graphicEffectsLevel() == KGlobalSettings::NoEffects) ? 1 : 200; + m_hoverAnimation->setDuration(duration); connect(m_hoverAnimation, SIGNAL(finished()), this, SLOT(slotHoverAnimationFinished())); } m_hoverAnimation->stop(); @@ -430,7 +432,6 @@ void KItemListWidget::clearHoverCache() void KItemListWidget::drawItemStyleOption(QPainter* painter, QWidget* widget, QStyle::State styleState) { - const QRect iconBounds = iconRect().toRect(); const QRect textBounds = textRect().toRect(); QStyleOptionViewItemV4 viewItemOption; @@ -438,17 +439,8 @@ void KItemListWidget::drawItemStyleOption(QPainter* painter, QWidget* widget, QS viewItemOption.state = styleState; viewItemOption.viewItemPosition = QStyleOptionViewItemV4::OnlyOne; viewItemOption.showDecorationSelected = true; - - if (iconBounds.bottom() > textBounds.top()) { - viewItemOption.rect = iconBounds | textBounds; - widget->style()->drawPrimitive(QStyle::PE_PanelItemViewItem, &viewItemOption, painter, widget); - } else { - viewItemOption.rect = iconBounds; - widget->style()->drawPrimitive(QStyle::PE_PanelItemViewItem, &viewItemOption, painter, widget); - - viewItemOption.rect = textBounds.adjusted(1, 1, -1, -1); - widget->style()->drawPrimitive(QStyle::PE_PanelItemViewItem, &viewItemOption, painter, widget); - } + viewItemOption.rect = textBounds.adjusted(1, 0, -1, 0); + widget->style()->drawPrimitive(QStyle::PE_PanelItemViewItem, &viewItemOption, painter, widget); } #include "kitemlistwidget.moc"