]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/dolphiniconsview.cpp
Treeview fixes (backport):
[dolphin.git] / src / dolphiniconsview.cpp
index a45b08dcf9886b27d7235c07900798ebca0468c6..553cdcfe62e8a84630aaa945a222f0f76dc1282b 100644 (file)
@@ -229,8 +229,15 @@ void DolphinIconsView::dragMoveEvent(QDragMoveEvent* event)
         const KFileItem item = itemForIndex(index);
         if (!item.isNull() && item.isDir()) {
             m_dropRect = visualRect(index);
+        } else {
+            m_dropRect.setSize(QSize()); // set as invalid
         }
     }
+    if (event->mimeData()->hasUrls()) {
+        // accept url drops, independently from the destination item
+        event->acceptProposedAction();
+    }
+
     setDirtyRegion(m_dropRect);
 }
 
@@ -260,7 +267,7 @@ void DolphinIconsView::paintEvent(QPaintEvent* event)
     // TODO: remove this code when the issue #160611 is solved in Qt 4.4
     if (m_dragging) {
         const QBrush& brush = viewOptions().palette.brush(QPalette::Normal, QPalette::Highlight);
-        DragAndDropHelper::drawHoverIndication(viewport(), m_dropRect, brush);
+        DragAndDropHelper::drawHoverIndication(this, m_dropRect, brush);
     }
 }
 
@@ -296,11 +303,6 @@ void DolphinIconsView::slotShowPreviewChanged()
 
 void DolphinIconsView::slotAdditionalInfoChanged(const KFileItemDelegate::InformationList& info)
 {
-    const IconsModeSettings* settings = DolphinSettings::instance().iconsModeSettings();
-    if (!settings->showAdditionalInfo()) {
-        return;
-    }
-
     const bool showPreview = m_controller->dolphinView()->showPreview();
     updateGridSize(showPreview, info.count());
 }
@@ -461,8 +463,7 @@ KFileItem DolphinIconsView::itemForIndex(const QModelIndex& index) const
 int DolphinIconsView::additionalInfoCount() const
 {
     const DolphinView* view = m_controller->dolphinView();
-    const IconsModeSettings* settings = DolphinSettings::instance().iconsModeSettings();
-    return settings->showAdditionalInfo() ? view->additionalInfo().count() : 0;
+    return view->additionalInfo().count();
 }
 
 #include "dolphiniconsview.moc"