#include "dolphinsortfilterproxymodel.h"
#include "dolphinview.h"
#include "dolphinviewautoscroller.h"
+#include "folderexpander.h"
#include "selectionmanager.h"
#include "settings/dolphinsettings.h"
#include "tooltips/tooltipmanager.h"
-#include "versioncontrolobserver.h"
+#include "versioncontrol/versioncontrolobserver.h"
#include "dolphin_generalsettings.h"
}
// initialize preview generator
+ Q_ASSERT(view->iconSize().isValid());
m_previewGenerator = new KFilePreviewGenerator(view);
m_previewGenerator->setPreviewShown(controller->dolphinView()->showPreview());
connect(controller, SIGNAL(zoomLevelChanged(int)),
connect(view->selectionModel(), SIGNAL(selectionChanged(const QItemSelection&, const QItemSelection&)),
controller, SLOT(emitSelectionChanged()));
+ // Give the view the ability to auto-expand its directories on hovering
+ // (the column view takes care about this itself). If the details view
+ // uses expandable folders, the auto-expanding should be used always.
+ m_folderExpander = new FolderExpander(view, proxyModel());
+ m_folderExpander->setEnabled(settings->autoExpandFolders());
+ connect(m_folderExpander, SIGNAL(enterDir(const QModelIndex&)),
+ controller, SLOT(triggerItem(const QModelIndex&)));
+
+ // react on namefilter changes
connect(controller, SIGNAL(nameFilterChanged(const QString&)),
this, SLOT(slotNameFilterChanged(const QString&)));
return m_fileItemDelegate;
}
+void ViewExtensionsFactory::setAutoFolderExpandingEnabled(bool enabled)
+{
+ m_folderExpander->setEnabled(enabled);
+}
+
+bool ViewExtensionsFactory::autoFolderExpandingEnabled() const
+{
+ return m_folderExpander->enabled();
+}
+
bool ViewExtensionsFactory::eventFilter(QObject* watched, QEvent* event)
{
Q_UNUSED(watched);