]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/sidebartreeview.cpp
This fixes the selection problem with the mouse _only_ for the categorized view....
[dolphin.git] / src / sidebartreeview.cpp
index 2316c5d6e031f0c8ee1f9352c1a27d01d59ca85f..3567c35d6b11676ac01c88c536cb35ff25ad5ea1 100644 (file)
@@ -21,6 +21,7 @@
 
 #include "dolphincontroller.h"
 #include "dolphinmodel.h"
+#include "draganddrophelper.h"
 
 #include <kfileitemdelegate.h>
 #include <QKeyEvent>
@@ -46,7 +47,7 @@ SidebarTreeView::SidebarTreeView(QWidget* parent) :
 //       check avoids a division by zero happening on versions before 4.3.1.
 //       Right now KDE in theory can be shipped with Qt 4.3.0 and above.
 //       ereslibre
-#if (QT_VERSION >= QT_VERSION_CHECK(4, 3, 2))
+#if (QT_VERSION >= QT_VERSION_CHECK(4, 3, 2) || defined(QT_KDE_QT_COPY))
     setVerticalScrollMode(QListView::ScrollPerPixel);
     setHorizontalScrollMode(QListView::ScrollPerPixel);
 #endif
@@ -83,7 +84,7 @@ bool SidebarTreeView::event(QEvent* event)
 //       check avoids a division by zero happening on versions before 4.3.1.
 //       Right now KDE in theory can be shipped with Qt 4.3.0 and above.
 //       ereslibre
-#if (QT_VERSION >= QT_VERSION_CHECK(4, 3, 2))
+#if (QT_VERSION >= QT_VERSION_CHECK(4, 3, 2) || defined(QT_KDE_QT_COPY))
     else if (event->type() == QEvent::UpdateRequest) {
         // a wheel movement will scroll 1 item
         if (model()->rowCount() > 0) {
@@ -95,6 +96,11 @@ bool SidebarTreeView::event(QEvent* event)
     return QTreeView::event(event);
 }
 
+void SidebarTreeView::startDrag(Qt::DropActions supportedActions)
+{
+    DragAndDropHelper::startDrag(this, supportedActions);
+}
+
 void SidebarTreeView::dragEnterEvent(QDragEnterEvent* event)
 {
     if (event->mimeData()->hasUrls()) {
@@ -146,7 +152,7 @@ void SidebarTreeView::paintEvent(QPaintEvent* event)
     // TODO: remove this code when the issue #160611 is solved in Qt 4.4
     if (m_dragging) {
         const QBrush& brush = palette().brush(QPalette::Normal, QPalette::Highlight);
-        DolphinController::drawHoverIndication(viewport(), m_dropRect, brush);
+        DragAndDropHelper::drawHoverIndication(viewport(), m_dropRect, brush);
     }
 }