#include "dolphinsettings.h"
#include "dolphinsortfilterproxymodel.h"
#include "dolphin_generalsettings.h"
+#include "dolphin_iconsmodesettings.h"
#include "viewproperties.h"
#include "viewpropsprogressinfo.h"
m_sorting->addItem(i18nc("@item:inlistbox Sort", "By Group"));
m_sorting->addItem(i18nc("@item:inlistbox Sort", "By Type"));
#ifdef HAVE_NEPOMUK
- if (!Nepomuk::ResourceManager::instance()->init()) {
- m_sorting->addItem(i18nc("@item:inlistbox Sort", "By Rating"));
- m_sorting->addItem(i18nc("@item:inlistbox Sort", "By Tags"));
- }
+ // TODO: Hided "sort by rating" and "sort by tags" as without caching the performance
+ // is too slow currently (Nepomuk will support caching in future releases).
+ //
+ // if (!Nepomuk::ResourceManager::instance()->init()) {
+ // m_sorting->addItem(i18nc("@item:inlistbox Sort", "By Rating"));
+ // m_sorting->addItem(i18nc("@item:inlistbox Sort", "By Tags"));
+ // }
#endif
QHBoxLayout* sortingLayout = new QHBoxLayout();
void ViewPropertiesDialog::configureAdditionalInfo()
{
- const KFileItemDelegate::InformationList info = m_viewProps->additionalInfo();
+ KFileItemDelegate::InformationList info = m_viewProps->additionalInfo();
+ const bool useDefaultInfo = (m_viewProps->viewMode() == DolphinView::DetailsView) &&
+ (info.isEmpty() || info.contains(KFileItemDelegate::NoInformation));
+ if (useDefaultInfo) {
+ // Using the details view without any additional information (-> additional column)
+ // makes no sense and leads to a usability problem as no viewport area is available
+ // anymore. Hence as fallback provide at least a size and date column.
+ info.clear();
+ info.append(KFileItemDelegate::Size);
+ info.append(KFileItemDelegate::ModificationTime);
+ m_viewProps->setAdditionalInfo(info);
+ }
+
AdditionalInfoDialog dialog(this, info);
if (dialog.exec() == QDialog::Accepted) {
m_viewProps->setAdditionalInfo(dialog.additionalInfo());
m_isDirty = false;
- if (m_useAsDefault->isChecked()) {
+ if (m_useAsDefault && m_useAsDefault->isChecked()) {
// For directories where no .directory file is available, the .directory
// file stored for the global view properties is used as fallback. To update
// this file we temporary turn on the global view properties mode.
m_sortOrder->setCurrentIndex(sortOrderIndex);
m_sorting->setCurrentIndex(m_viewProps->sorting());
- m_additionalInfo->setEnabled(index != DolphinView::ColumnView);
+ const IconsModeSettings* settings = DolphinSettings::instance().iconsModeSettings();
+ const bool enabled = (index == DolphinView::DetailsView) ||
+ ((index == DolphinView::IconsView) && settings->showAdditionalInfo());
+ m_additionalInfo->setEnabled(enabled);
// load show preview, show in groups and show hidden files settings
m_showPreview->setChecked(m_viewProps->showPreview());