#include "dolphinmodel.h"
#include "dolphinsortfilterproxymodel.h"
#include "dolphinsettings.h"
#include "dolphinmodel.h"
#include "dolphinsortfilterproxymodel.h"
#include "dolphinsettings.h"
m_dirLister->setAutoUpdate(true);
m_dirLister->setMainWindow(this);
m_dirLister->setDelayedMimeTypes(true);
m_dirLister->setAutoUpdate(true);
m_dirLister->setMainWindow(this);
m_dirLister->setDelayedMimeTypes(true);
connect(m_dirLister, SIGNAL(newItems(const KFileItemList&)),
this, SLOT(generatePreviews(const KFileItemList&)));
connect(m_dirLister, SIGNAL(newItems(const KFileItemList&)),
this, SLOT(generatePreviews(const KFileItemList&)));
// TODO: remove this code when the issue #160611 is solved in Qt 4.4
const QModelIndex index = indexAt(event->pos());
setDirtyRegion(m_dropRect);
// TODO: remove this code when the issue #160611 is solved in Qt 4.4
const QModelIndex index = indexAt(event->pos());
setDirtyRegion(m_dropRect);
- m_dropRect = visualRect(index);
+
+ m_dropRect.setSize(QSize()); // set as invalid
+ if (index.isValid()) {
+ const KFileItem item = itemForIndex(index);
+ if (!item.isNull() && item.isDir()) {
+ m_dropRect = visualRect(index);
+ }
+ }
const KUrl::List urls = KUrl::List::fromMimeData(event->mimeData());
if (!urls.isEmpty()) {
const QModelIndex index = indexAt(event->pos());
const KUrl::List urls = KUrl::List::fromMimeData(event->mimeData());
if (!urls.isEmpty()) {
const QModelIndex index = indexAt(event->pos());
- if (index.isValid()) {
- const KFileItem item = itemForIndex(index);
- m_view->m_controller->indicateDroppedUrls(urls,
- url(),
- item,
- event->source());
- event->acceptProposedAction();
- }
+ const KFileItem item = itemForIndex(index);
+ m_view->m_controller->indicateDroppedUrls(urls,
+ url(),
+ item);
+ event->acceptProposedAction();
// TODO: remove this code when the issue #160611 is solved in Qt 4.4
if (m_dragging) {
const QBrush& brush = m_viewOptions.palette.brush(QPalette::Normal, QPalette::Highlight);
// TODO: remove this code when the issue #160611 is solved in Qt 4.4
if (m_dragging) {
const QBrush& brush = m_viewOptions.palette.brush(QPalette::Normal, QPalette::Highlight);
selModel->select(selected, QItemSelectionModel::Select);
selModel->select(deselected, QItemSelectionModel::Deselect);
}
selModel->select(selected, QItemSelectionModel::Select);
selModel->select(deselected, QItemSelectionModel::Deselect);
}
void DolphinColumnWidget::triggerItem(const QModelIndex& index)
{
const KFileItem item = itemForIndex(index);
void DolphinColumnWidget::triggerItem(const QModelIndex& index)
{
const KFileItem item = itemForIndex(index);
// TODO: same implementation as in DolphinView; create helper class
// for generatePreviews(), showPreview() and isCutItem()
// TODO: same implementation as in DolphinView; create helper class
// for generatePreviews(), showPreview() and isCutItem()
KIO::PreviewJob* job = KIO::filePreview(items, 128);
connect(job, SIGNAL(gotPreview(const KFileItem&, const QPixmap&)),
this, SLOT(showPreview(const KFileItem&, const QPixmap&)));
KIO::PreviewJob* job = KIO::filePreview(items, 128);
connect(job, SIGNAL(gotPreview(const KFileItem&, const QPixmap&)),
this, SLOT(showPreview(const KFileItem&, const QPixmap&)));