]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/kitemviews/kitemlistwidget.cpp
Refactoring: add shouldClearSearchIfInputTimeReached to KItemListKeyboardSearchManager
[dolphin.git] / src / kitemviews / kitemlistwidget.cpp
index f92309254f2944b0aeeda6c9b013c5f73a587d0d..e8482216d55937fd8981a0c8304891f86d0a6286 100644 (file)
 #include "kitemlistwidget.h"
 
 #include "kitemlistview.h"
-
 #include "private/kitemlistselectiontoggle.h"
 
-
 #include <QApplication>
 #include <QPainter>
 #include <QPropertyAnimation>
@@ -129,7 +127,7 @@ void KItemListWidget::paint(QPainter* painter, const QStyleOptionGraphicsItem* o
 
     if (m_current && m_editedRole.isEmpty()) {
         QStyleOptionFocusRect focusRectOption;
-        focusRectOption.initFrom(widget);
+        initStyleOption(&focusRectOption);
         focusRectOption.rect = textFocusRect().toRect();
         focusRectOption.state = QStyle::State_Enabled | QStyle::State_Item | QStyle::State_KeyboardFocusChange;
         if (m_selected) {
@@ -193,10 +191,13 @@ qreal KItemListWidget::columnWidth(const QByteArray& role) const
 
 void KItemListWidget::setStyleOption(const KItemListStyleOption& option)
 {
+    if (m_styleOption == option) {
+        return;
+    }
+
     const KItemListStyleOption previous = m_styleOption;
     clearHoverCache();
     m_styleOption = option;
-
     styleOptionChanged(option, previous);
     update();
 }
@@ -516,11 +517,11 @@ void KItemListWidget::clearHoverCache()
 void KItemListWidget::drawItemStyleOption(QPainter* painter, QWidget* widget, QStyle::State styleState)
 {
     QStyleOptionViewItem viewItemOption;
-    viewItemOption.initFrom(widget);
+    initStyleOption(&viewItemOption);
     viewItemOption.state = styleState;
     viewItemOption.viewItemPosition = QStyleOptionViewItem::OnlyOne;
     viewItemOption.showDecorationSelected = true;
     viewItemOption.rect = selectionRect().toRect();
-    widget->style()->drawPrimitive(QStyle::PE_PanelItemViewItem, &viewItemOption, painter, widget);
+    style()->drawPrimitive(QStyle::PE_PanelItemViewItem, &viewItemOption, painter, widget);
 }