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);
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);
void SidebarTreeView::startDrag(Qt::DropActions supportedActions)
{
- DragAndDropHelper::startDrag(this, supportedActions);
+ DragAndDropHelper::instance().startDrag(this, supportedActions);
}
void SidebarTreeView::dragEnterEvent(QDragEnterEvent* 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"