X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/e65154552769e648bcbe14429123ff9fcd48bd29..bf768056294fa3ca471eee71aa2d013db5e25b7b:/src/dolphiniconsview.cpp diff --git a/src/dolphiniconsview.cpp b/src/dolphiniconsview.cpp index a45b08dcf..d3d485f1a 100644 --- a/src/dolphiniconsview.cpp +++ b/src/dolphiniconsview.cpp @@ -78,8 +78,8 @@ DolphinIconsView::DolphinIconsView(QWidget* parent, DolphinController* controlle const DolphinView* view = controller->dolphinView(); connect(view, SIGNAL(showPreviewChanged()), this, SLOT(slotShowPreviewChanged())); - connect(view, SIGNAL(additionalInfoChanged(const KFileItemDelegate::InformationList&)), - this, SLOT(slotAdditionalInfoChanged(const KFileItemDelegate::InformationList&))); + connect(view, SIGNAL(additionalInfoChanged()), + this, SLOT(slotAdditionalInfoChanged())); connect(this, SIGNAL(entered(const QModelIndex&)), this, SLOT(slotEntered(const QModelIndex&))); @@ -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); } } @@ -294,15 +301,11 @@ void DolphinIconsView::slotShowPreviewChanged() updateGridSize(view->showPreview(), additionalInfoCount()); } -void DolphinIconsView::slotAdditionalInfoChanged(const KFileItemDelegate::InformationList& info) +void DolphinIconsView::slotAdditionalInfoChanged() { - const IconsModeSettings* settings = DolphinSettings::instance().iconsModeSettings(); - if (!settings->showAdditionalInfo()) { - return; - } - - const bool showPreview = m_controller->dolphinView()->showPreview(); - updateGridSize(showPreview, info.count()); + const DolphinView* view = m_controller->dolphinView(); + const bool showPreview = view->showPreview(); + updateGridSize(showPreview, view->additionalInfo().count()); } void DolphinIconsView::zoomIn() @@ -461,8 +464,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"