DolphinSortFilterProxyModel* proxyModel) :
QWidget(parent),
m_active(true),
+ m_showPreview(false),
m_loadingDirectory(false),
m_storedCategorizedSorting(false),
m_mode(DolphinView::IconsView),
connect(m_controller, SIGNAL(requestContextMenu(const QPoint&)),
this, SLOT(openContextMenu(const QPoint&)));
- connect(m_controller, SIGNAL(urlsDropped(const KUrl::List&, const KUrl&, const KFileItem&, QWidget*)),
- this, SLOT(dropUrls(const KUrl::List&, const KUrl&, const KFileItem&, QWidget*)));
+ connect(m_controller, SIGNAL(urlsDropped(const KUrl::List&, const KUrl&, const KFileItem&)),
+ this, SLOT(dropUrls(const KUrl::List&, const KUrl&, const KFileItem&)));
connect(m_controller, SIGNAL(sortingChanged(DolphinView::Sorting)),
this, SLOT(updateSorting(DolphinView::Sorting)));
connect(m_controller, SIGNAL(sortOrderChanged(Qt::SortOrder)),
void DolphinView::setShowPreview(bool show)
{
+ if (m_showPreview == show) {
+ return;
+ }
+
const KUrl viewPropsUrl = viewPropertiesUrl();
ViewProperties props(viewPropsUrl);
props.setShowPreview(show);
- m_controller->setShowPreview(show);
+ m_showPreview = show;
+
emit showPreviewChanged();
loadDirectory(viewPropsUrl, true);
bool DolphinView::showPreview() const
{
- return m_controller->showPreview();
+ return m_showPreview;
}
void DolphinView::setShowHiddenFiles(bool show)
props.setShowHiddenFiles(show);
m_dirLister->setShowingDotFiles(show);
- m_controller->setShowHiddenFiles(show);
emit showHiddenFilesChanged();
loadDirectory(viewPropsUrl, true);
void DolphinView::generatePreviews(const KFileItemList& items)
{
- if (m_controller->showPreview()) {
+ if (m_controller->dolphinView()->showPreview()) {
KIO::PreviewJob* job = KIO::filePreview(items, 128);
connect(job, SIGNAL(gotPreview(const KFileItem&, const QPixmap&)),
this, SLOT(showPreview(const KFileItem&, const QPixmap&)));
const bool showHiddenFiles = props.showHiddenFiles();
if (showHiddenFiles != m_dirLister->showingDotFiles()) {
m_dirLister->setShowingDotFiles(showHiddenFiles);
- m_controller->setShowHiddenFiles(showHiddenFiles);
emit showHiddenFilesChanged();
}
}
const bool showPreview = props.showPreview();
- if (showPreview != m_controller->showPreview()) {
- m_controller->setShowPreview(showPreview);
+ if (showPreview != m_showPreview) {
+ m_showPreview = showPreview;
emit showPreviewChanged();
}
}
void DolphinView::dropUrls(const KUrl::List& urls,
const KUrl& destPath,
- const KFileItem& destItem,
- QWidget* source)
-{
- bool dropAboveDir = false;
- if (!destItem.isNull()) {
- dropAboveDir = destItem.isDir();
- if (!dropAboveDir) {
- // the dropping is done above a file
- return;
- }
- } else if (source == itemView()) {
- // the dropping is done into the same viewport where the dragging
- // has been started
- return;
+ const KFileItem& destItem)
+{
+ const KUrl& destination = !destItem.isNull() && destItem.isDir() ?
+ destItem.url() : destPath;
+ const KUrl sourceDir = KUrl(urls.first().directory());
+ if (sourceDir != destination) {
+ dropUrls(urls, destination);
}
-
- const KUrl& destination = dropAboveDir ? destItem.url() : destPath;
- dropUrls(urls, destination);
}
void DolphinView::dropUrls(const KUrl::List& urls,