X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/965107fd024be86eb014ee360211a66b320a3b43..d05ffe96f986bcd33281cb5f97b73c1b4bf2b2ae:/src/views/dolphinitemlistcontainer.cpp diff --git a/src/views/dolphinitemlistcontainer.cpp b/src/views/dolphinitemlistcontainer.cpp index 9e7a15f74..38adfde64 100644 --- a/src/views/dolphinitemlistcontainer.cpp +++ b/src/views/dolphinitemlistcontainer.cpp @@ -52,6 +52,7 @@ DolphinItemListContainer::DolphinItemListContainer(KDirLister* dirLister, m_fileItemListView->setEnabledSelectionToggles(GeneralSettings::showSelectionToggle()); controller()->setView(m_fileItemListView); + updateAutoActivationDelay(); updateFont(); updateGridSize(); } @@ -174,6 +175,10 @@ void DolphinItemListContainer::refresh() ViewModeSettings settings(viewMode()); settings.readConfig(); + beginTransaction(); + + m_fileItemListView->setEnabledSelectionToggles(GeneralSettings::showSelectionToggle()); + updateAutoActivationDelay(); updateFont(); updateGridSize(); @@ -183,6 +188,8 @@ void DolphinItemListContainer::refresh() << "imagethumbnail" << "jpegthumbnail"); m_fileItemListView->setEnabledPlugins(plugins); + + endTransaction(); } void DolphinItemListContainer::updateGridSize() @@ -220,7 +227,11 @@ void DolphinItemListContainer::updateGridSize() itemHeight = innerMargin * 2 + qMax(iconSize, styleOption.fontMetrics.height()); break; } - default: Q_ASSERT(false); break; + default: + itemWidth = -1; + itemHeight = -1; + Q_ASSERT(false); + break; } // Apply the calculated values @@ -247,6 +258,12 @@ void DolphinItemListContainer::updateFont() m_fileItemListView->setStyleOption(styleOption); } +void DolphinItemListContainer::updateAutoActivationDelay() +{ + const int delay = GeneralSettings::autoExpandFolders() ? 750 : -1; + controller()->setAutoActivationDelay(delay); +} + ViewModeSettings::ViewMode DolphinItemListContainer::viewMode() const { ViewModeSettings::ViewMode mode; @@ -255,7 +272,9 @@ ViewModeSettings::ViewMode DolphinItemListContainer::viewMode() const case KFileItemListView::IconsLayout: mode = ViewModeSettings::IconsMode; break; case KFileItemListView::CompactLayout: mode = ViewModeSettings::CompactMode; break; case KFileItemListView::DetailsLayout: mode = ViewModeSettings::DetailsMode; break; - default: Q_ASSERT(false); break; + default: mode = ViewModeSettings::IconsMode; + Q_ASSERT(false); + break; } return mode;