]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/sidebartreeview.cpp
When common view properties are used for all folders, the internal properties should...
[dolphin.git] / src / sidebartreeview.cpp
index 0b18c260a04ba7c38c9c4320918b7586767c3732..a876ee6c30a39ebca6ad00665f22eafcda0a3b1e 100644 (file)
@@ -66,7 +66,8 @@ SidebarTreeView::~SidebarTreeView()
 
 bool SidebarTreeView::event(QEvent* event)
 {
-    if (event->type() == QEvent::Polish) {
+    switch (event->type()) {
+    case QEvent::Polish:
         // hide all columns except of the 'Name' column
         hideColumn(DolphinModel::Size);
         hideColumn(DolphinModel::ModifiedTime);
@@ -77,12 +78,23 @@ bool SidebarTreeView::event(QEvent* event)
         hideColumn(DolphinModel::Rating);
         hideColumn(DolphinModel::Tags);
         header()->hide();
-    }
-    else if (event->type() == QEvent::UpdateRequest) {
+        break;
+        
+    case QEvent::Show:
+        // TODO: The opening/closing animation of subtrees flickers in combination with the
+        // sidebar when using the Oxygen style. As workaround the animation is turned off:
+        setAnimated(false);
+        break;
+    
+    case QEvent::UpdateRequest:
         // a wheel movement will scroll 1 item
         if (model()->rowCount() > 0) {
             verticalScrollBar()->setSingleStep(sizeHintForRow(0) / 3);
         }
+        break;
+        
+    default:
+        break;
     }
 
     return KTreeView::event(event);
@@ -90,7 +102,7 @@ bool SidebarTreeView::event(QEvent* event)
 
 void SidebarTreeView::startDrag(Qt::DropActions supportedActions)
 {
-    DragAndDropHelper::startDrag(this, supportedActions);
+    DragAndDropHelper::instance().startDrag(this, supportedActions);
 }
 
 void SidebarTreeView::dragEnterEvent(QDragEnterEvent* event)
@@ -125,16 +137,11 @@ void SidebarTreeView::dragMoveEvent(QDragMoveEvent* event)
 
 void SidebarTreeView::dropEvent(QDropEvent* event)
 {
-    const KUrl::List urls = KUrl::List::fromMimeData(event->mimeData());
-    if (urls.isEmpty()) {
-        KTreeView::dropEvent(event);
-    } else {
-        event->acceptProposedAction();
-        const QModelIndex index = indexAt(event->pos());
-        if (index.isValid()) {
-            emit urlsDropped(urls, index);
-        }
+    const QModelIndex index = indexAt(event->pos());
+    if (index.isValid()) {
+        emit urlsDropped(index, event);
     }
+    KTreeView::dropEvent(event);
 }
 
 #include "sidebartreeview.moc"