From 82cfc125f4fd37083e3adf3c5d2b999124262807 Mon Sep 17 00:00:00 2001 From: l10n daemon script Date: Mon, 10 Oct 2016 09:41:54 +0000 Subject: SVN_SILENT made messages (.desktop file) - always resolve ours In case of conflict in i18n, keep the version of the branch "ours" To resolve a particular conflict, "git checkout --ours path/to/file.desktop" --- src/settings/kcm/kcmdolphingeneral.desktop | 1 + src/settings/kcm/kcmdolphinnavigation.desktop | 1 + src/settings/kcm/kcmdolphinservices.desktop | 1 + src/settings/kcm/kcmdolphinviewmodes.desktop | 1 + 4 files changed, 4 insertions(+) (limited to 'src/settings') diff --git a/src/settings/kcm/kcmdolphingeneral.desktop b/src/settings/kcm/kcmdolphingeneral.desktop index a6e3b6345..962fb7778 100644 --- a/src/settings/kcm/kcmdolphingeneral.desktop +++ b/src/settings/kcm/kcmdolphingeneral.desktop @@ -198,6 +198,7 @@ X-KDE-Keywords[hu]=fájlkezelő X-KDE-Keywords[ia]=gerente de file X-KDE-Keywords[id]=manajer berkas X-KDE-Keywords[it]=gestore dei file +X-KDE-Keywords[ja]=ファイルマネージャ X-KDE-Keywords[ko]=파일 관리자 X-KDE-Keywords[lt]=Failų tvarkyklė X-KDE-Keywords[nb]=filbehandler diff --git a/src/settings/kcm/kcmdolphinnavigation.desktop b/src/settings/kcm/kcmdolphinnavigation.desktop index b49d6a266..eaca4f141 100644 --- a/src/settings/kcm/kcmdolphinnavigation.desktop +++ b/src/settings/kcm/kcmdolphinnavigation.desktop @@ -199,6 +199,7 @@ X-KDE-Keywords[hu]=fájlkezelő X-KDE-Keywords[ia]=gerente de file X-KDE-Keywords[id]=manajer berkas X-KDE-Keywords[it]=gestore dei file +X-KDE-Keywords[ja]=ファイルマネージャ X-KDE-Keywords[ko]=파일 관리자 X-KDE-Keywords[lt]=Failų tvarkyklė X-KDE-Keywords[nb]=filbehandler diff --git a/src/settings/kcm/kcmdolphinservices.desktop b/src/settings/kcm/kcmdolphinservices.desktop index 3b27f9540..1775f7eff 100644 --- a/src/settings/kcm/kcmdolphinservices.desktop +++ b/src/settings/kcm/kcmdolphinservices.desktop @@ -154,6 +154,7 @@ X-KDE-Keywords[hu]=fájlkezelő X-KDE-Keywords[ia]=gerente de file X-KDE-Keywords[id]=manajer berkas X-KDE-Keywords[it]=gestore dei file +X-KDE-Keywords[ja]=ファイルマネージャ X-KDE-Keywords[ko]=파일 관리자 X-KDE-Keywords[lt]=Failų tvarkyklė X-KDE-Keywords[nb]=filbehandler diff --git a/src/settings/kcm/kcmdolphinviewmodes.desktop b/src/settings/kcm/kcmdolphinviewmodes.desktop index 568df4148..d1b5abe49 100644 --- a/src/settings/kcm/kcmdolphinviewmodes.desktop +++ b/src/settings/kcm/kcmdolphinviewmodes.desktop @@ -199,6 +199,7 @@ X-KDE-Keywords[hu]=fájlkezelő X-KDE-Keywords[ia]=gerente de file X-KDE-Keywords[id]=manajer berkas X-KDE-Keywords[it]=gestore dei file +X-KDE-Keywords[ja]=ファイルマネージャ X-KDE-Keywords[ko]=파일 관리자 X-KDE-Keywords[lt]=Failų tvarkyklė X-KDE-Keywords[nb]=filbehandler -- cgit v1.3 From ae935d36b1565dd9a763f022caac5863071711fa Mon Sep 17 00:00:00 2001 From: l10n daemon script Date: Tue, 20 Dec 2016 12:38:21 +0100 Subject: SVN_SILENT made messages (.desktop file) - always resolve ours In case of conflict in i18n, keep the version of the branch "ours" To resolve a particular conflict, "git checkout --ours path/to/file.desktop" --- src/dolphinpart.desktop | 3 --- src/org.kde.dolphin.desktop | 2 -- src/settings/kcm/kcmdolphingeneral.desktop | 5 ----- src/settings/kcm/kcmdolphinnavigation.desktop | 5 ----- src/settings/kcm/kcmdolphinservices.desktop | 4 ---- src/settings/kcm/kcmdolphinviewmodes.desktop | 5 ----- src/views/versioncontrol/fileviewversioncontrolplugin.desktop | 1 - 7 files changed, 25 deletions(-) (limited to 'src/settings') diff --git a/src/dolphinpart.desktop b/src/dolphinpart.desktop index 6b9398da8..9b3089542 100644 --- a/src/dolphinpart.desktop +++ b/src/dolphinpart.desktop @@ -2,7 +2,6 @@ Type=Service Name=Dolphin View Name[ar]=منظور دولفين -Name[ast]=Vista de Dolphin Name[ca]=Vista del Dolphin Name[ca@valencia]=Vista del Dolphin Name[cs]=Pohled Dolphin @@ -107,7 +106,6 @@ Exec=dolphin [Desktop Action compact] Name=Compact Name[ar]=متراصّ -Name[ast]=Compautu Name[ca]=Compacta Name[ca@valencia]=Compacta Name[cs]=Kompaktní @@ -154,7 +152,6 @@ Exec=dolphin [Desktop Action details] Name=Details Name[ar]=التّفاصيل -Name[ast]=Detalles Name[ca]=Detalls Name[ca@valencia]=Detalls Name[cs]=Podrobnosti diff --git a/src/org.kde.dolphin.desktop b/src/org.kde.dolphin.desktop index 63b72d966..f50ef2b6c 100755 --- a/src/org.kde.dolphin.desktop +++ b/src/org.kde.dolphin.desktop @@ -1,7 +1,6 @@ [Desktop Entry] Name=Dolphin Name[ar]=دولفين -Name[ast]=Dolphin Name[ca]=Dolphin Name[ca@valencia]=Dolphin Name[cs]=Dolphin @@ -49,7 +48,6 @@ X-DocPath=dolphin/index.html Categories=Qt;KDE;System;FileTools;FileManager; GenericName=File Manager GenericName[ar]=مدير ملفّات -GenericName[ast]=Xestor de ficheros GenericName[ca]=Gestor de fitxers GenericName[ca@valencia]=Gestor de fitxers GenericName[cs]=Správce souborů diff --git a/src/settings/kcm/kcmdolphingeneral.desktop b/src/settings/kcm/kcmdolphingeneral.desktop index 962fb7778..499fe7391 100644 --- a/src/settings/kcm/kcmdolphingeneral.desktop +++ b/src/settings/kcm/kcmdolphingeneral.desktop @@ -1,6 +1,5 @@ Name=Dolphin General Name[ar]=دولفين العامّ -Name[ast]=Xeneral de Dolphin Name[ca]=General del Dolphin Name[ca@valencia]=General del Dolphin Name[cs]=Obecný Dolphin @@ -43,7 +42,6 @@ Name[zh_CN]=Dolphin 常规 Name[zh_TW]=Dolphin 一般 Comment=This service allows configuration of general Dolphin settings. Comment[ar]=تسمح هذه الخدمة بضبط إعدادات دولفين العامّة. -Comment[ast]=Esti serviciu permite la configuración de los axustes xenerales de Dolphin. Comment[ca]=Aquest servei permet la configuració de l'arranjament general del Dolphin. Comment[ca@valencia]=Este servei permet la configuració de l'arranjament general del Dolphin. Comment[cs]=Tato služba umožňuje obecné nastavení Dolphinu. @@ -97,7 +95,6 @@ X-DocPath=dolphin/index.html#preferences-dialog-general # ctxt: Random file browsing settings. Name=General Name[ar]=عامّ -Name[ast]=Xeneral Name[ca]=General Name[ca@valencia]=General Name[cs]=Obecné @@ -139,7 +136,6 @@ Name[zh_CN]=常规 Name[zh_TW]=一般 Comment=Configure general file manager settings Comment[ar]=اضبط إعدادات مدير الملفّات العامّة -Comment[ast]=Configura los axustes xenerales del xestor de ficheros Comment[ca]=Configura les opcions generals del gestor de fitxers Comment[ca@valencia]=Configura les opcions generals del gestor de fitxers Comment[cs]=Obecné nastavení správce souborů @@ -181,7 +177,6 @@ Comment[zh_CN]=配置常规文件管理器设置 Comment[zh_TW]=設定一般檔案管理員 X-KDE-Keywords=file manager X-KDE-Keywords[ar]=مدير ملفّات ملفات الملفّات الملفات -X-KDE-Keywords[ast]=xestor de ficheros X-KDE-Keywords[ca]=gestor de fitxers X-KDE-Keywords[ca@valencia]=gestor de fitxers X-KDE-Keywords[cs]=správce souborů diff --git a/src/settings/kcm/kcmdolphinnavigation.desktop b/src/settings/kcm/kcmdolphinnavigation.desktop index eaca4f141..e03a336de 100644 --- a/src/settings/kcm/kcmdolphinnavigation.desktop +++ b/src/settings/kcm/kcmdolphinnavigation.desktop @@ -1,6 +1,5 @@ Name=Dolphin Navigation Name[ar]=التّنقّل في دولفين -Name[ast]=Navegación de Dolphin Name[ca]=Navegació del Dolphin Name[ca@valencia]=Navegació del Dolphin Name[cs]=Navigace Dolphinu @@ -43,7 +42,6 @@ Name[zh_CN]=Dolphin 导航 Name[zh_TW]=Dolphin 導覽 Comment=This service allows configuration of the Dolphin navigation. Comment[ar]=تسمح هذه الخدمة بضبط التّنقّل في دولفين. -Comment[ast]=Esti serviciu permite la configuración de la navegación de Dolphin. Comment[ca]=Aquest servei permet la configuració de la navegació del Dolphin. Comment[ca@valencia]=Este servei permet la configuració de la navegació del Dolphin. Comment[cs]=Tato služba umožňuje nastavení navigace v Dolphinu. @@ -96,7 +94,6 @@ X-KDE-ParentApp=kcontrol X-DocPath=dolphin/index.html#preferences-dialog-navigation Name=Navigation Name[ar]=التّنقّل -Name[ast]=Navegación Name[ca]=Navegació Name[ca@valencia]=Navegació Name[cs]=Navigace @@ -139,7 +136,6 @@ Name[zh_CN]=导航 Name[zh_TW]=導覽 Comment=Configure file manager navigation Comment[ar]=اضبط التّنقّل في مدير الملفّات -Comment[ast]=Configura la navegación del xestor de ficheros Comment[ca]=Configura la navegació del gestor de fitxers Comment[ca@valencia]=Configura la navegació del gestor de fitxers Comment[cs]=Nastavení navigace správce souborů @@ -182,7 +178,6 @@ Comment[zh_CN]=配置文件管理器导航 Comment[zh_TW]=設定檔案管理員導覽 X-KDE-Keywords=file manager X-KDE-Keywords[ar]=مدير ملفّات ملفات الملفّات الملفات -X-KDE-Keywords[ast]=xestor de ficheros X-KDE-Keywords[ca]=gestor de fitxers X-KDE-Keywords[ca@valencia]=gestor de fitxers X-KDE-Keywords[cs]=správce souborů diff --git a/src/settings/kcm/kcmdolphinservices.desktop b/src/settings/kcm/kcmdolphinservices.desktop index 1775f7eff..2905db14b 100644 --- a/src/settings/kcm/kcmdolphinservices.desktop +++ b/src/settings/kcm/kcmdolphinservices.desktop @@ -1,6 +1,5 @@ Name=Dolphin Services Name[ar]=خدمات دولفين -Name[ast]=Servicios de Dolphin Name[ca]=Serveis del Dolphin Name[ca@valencia]=Serveis del Dolphin Name[cs]=Služby Dolphinu @@ -53,7 +52,6 @@ X-KDE-ParentApp=kcontrol X-DocPath=dolphin/index.html#preferences-dialog-services Name=Services Name[ar]=الخدمات -Name[ast]=Servicios Name[ca]=Serveis Name[ca@valencia]=Serveis Name[cs]=Služby @@ -95,7 +93,6 @@ Name[zh_CN]=服务 Name[zh_TW]=服務 Comment=Configure file manager services Comment[ar]=اضبط خدمات مدير الملفّات -Comment[ast]=Configura los servicios del xestor de ficheros Comment[ca]=Configura els serveis del gestor de fitxers Comment[ca@valencia]=Configura els serveis del gestor de fitxers Comment[cs]=Nastavení služeb správce souborů @@ -137,7 +134,6 @@ Comment[zh_CN]=配置文件管理器服务 Comment[zh_TW]=設定檔案管理員服務 X-KDE-Keywords=file manager X-KDE-Keywords[ar]=مدير ملفّات ملفات الملفّات الملفات -X-KDE-Keywords[ast]=xestor de ficheros X-KDE-Keywords[ca]=gestor de fitxers X-KDE-Keywords[ca@valencia]=gestor de fitxers X-KDE-Keywords[cs]=správce souborů diff --git a/src/settings/kcm/kcmdolphinviewmodes.desktop b/src/settings/kcm/kcmdolphinviewmodes.desktop index d1b5abe49..21ee6cf75 100644 --- a/src/settings/kcm/kcmdolphinviewmodes.desktop +++ b/src/settings/kcm/kcmdolphinviewmodes.desktop @@ -1,6 +1,5 @@ Name=Dolphin View Modes Name[ar]=أوضاع المنظور في دولفين -Name[ast]=Moos de vista de Dolphin Name[ca]=Modes de vista del Dolphin Name[ca@valencia]=Modes de vista del Dolphin Name[cs]=Režimy pohledů Dolphinu @@ -43,7 +42,6 @@ Name[zh_CN]=Dolphin 视图模式 Name[zh_TW]=設定檔案管理員服務 Comment=This service allows configuration of the Dolphin view modes. Comment[ar]=تسمح هذه الخدمة بضبط أوضاع المنظور في دولفين. -Comment[ast]=Esti serviciu permite la configuración de los moos de vista de Dolphin. Comment[ca]=Aquest servei permet la configuració dels modes de vista del Dolphin. Comment[ca@valencia]=Este servei permet la configuració dels modes de vista del Dolphin. Comment[cs]=Tato služba umožňuje nastavení režimů pohledu Dolphinu. @@ -96,7 +94,6 @@ X-KDE-ParentApp=kcontrol X-DocPath=dolphin/index.html#preferences-dialog-viewmodes Name=View Modes Name[ar]=أوضاع المنظور -Name[ast]=Moos de vista Name[ca]=Modes de vista Name[ca@valencia]=Modes de vista Name[cs]=Režimy pohledu @@ -139,7 +136,6 @@ Name[zh_CN]=视图模式 Name[zh_TW]=檢視模式 Comment=Configure file manager view modes Comment[ar]=اضبط أوضاع المنظور في مدير الملفّات -Comment[ast]=Configura los moos de vista del xestor de ficheros Comment[ca]=Configura els modes de vista del gestor de fitxers Comment[ca@valencia]=Configura els modes de vista del gestor de fitxers Comment[cs]=Nastavení režimů pohledu správce souborů @@ -182,7 +178,6 @@ Comment[zh_CN]=配置文件管理器视图模式 Comment[zh_TW]=設定檔案管理員檢視模式 X-KDE-Keywords=file manager X-KDE-Keywords[ar]=مدير ملفّات ملفات الملفّات الملفات -X-KDE-Keywords[ast]=xestor de ficheros X-KDE-Keywords[ca]=gestor de fitxers X-KDE-Keywords[ca@valencia]=gestor de fitxers X-KDE-Keywords[cs]=správce souborů diff --git a/src/views/versioncontrol/fileviewversioncontrolplugin.desktop b/src/views/versioncontrol/fileviewversioncontrolplugin.desktop index cdec01b9d..67951cfe7 100644 --- a/src/views/versioncontrol/fileviewversioncontrolplugin.desktop +++ b/src/views/versioncontrol/fileviewversioncontrolplugin.desktop @@ -2,7 +2,6 @@ Type=ServiceType X-KDE-ServiceType=FileViewVersionControlPlugin Comment=Version Control Plugin for File Views -Comment[ast]=Complementu de control de versiones pa vistes de ficheros Comment[ca]=Connector de control de versions per a les vistes de fitxers Comment[ca@valencia]=Connector de control de versions per a les vistes de fitxers Comment[cs]=Modul pro správu verzí pro pohledy na soubory -- cgit v1.3 From c1eeb0e115b6074e296892c95192cf464c0c83c9 Mon Sep 17 00:00:00 2001 From: l10n daemon script Date: Fri, 13 Jan 2017 05:50:46 +0100 Subject: SVN_SILENT made messages (.desktop file) - always resolve ours In case of conflict in i18n, keep the version of the branch "ours" To resolve a particular conflict, "git checkout --ours path/to/file.desktop" --- src/dolphinpart.desktop | 1 + src/org.kde.dolphin.desktop | 2 ++ src/settings/kcm/kcmdolphingeneral.desktop | 2 ++ src/settings/kcm/kcmdolphinnavigation.desktop | 2 ++ src/settings/kcm/kcmdolphinservices.desktop | 3 +++ src/settings/kcm/kcmdolphinviewmodes.desktop | 1 + 6 files changed, 11 insertions(+) (limited to 'src/settings') diff --git a/src/dolphinpart.desktop b/src/dolphinpart.desktop index 9b3089542..da0a659d3 100644 --- a/src/dolphinpart.desktop +++ b/src/dolphinpart.desktop @@ -152,6 +152,7 @@ Exec=dolphin [Desktop Action details] Name=Details Name[ar]=التّفاصيل +Name[ast]=Detalles Name[ca]=Detalls Name[ca@valencia]=Detalls Name[cs]=Podrobnosti diff --git a/src/org.kde.dolphin.desktop b/src/org.kde.dolphin.desktop index f50ef2b6c..63b72d966 100755 --- a/src/org.kde.dolphin.desktop +++ b/src/org.kde.dolphin.desktop @@ -1,6 +1,7 @@ [Desktop Entry] Name=Dolphin Name[ar]=دولفين +Name[ast]=Dolphin Name[ca]=Dolphin Name[ca@valencia]=Dolphin Name[cs]=Dolphin @@ -48,6 +49,7 @@ X-DocPath=dolphin/index.html Categories=Qt;KDE;System;FileTools;FileManager; GenericName=File Manager GenericName[ar]=مدير ملفّات +GenericName[ast]=Xestor de ficheros GenericName[ca]=Gestor de fitxers GenericName[ca@valencia]=Gestor de fitxers GenericName[cs]=Správce souborů diff --git a/src/settings/kcm/kcmdolphingeneral.desktop b/src/settings/kcm/kcmdolphingeneral.desktop index 499fe7391..556231e44 100644 --- a/src/settings/kcm/kcmdolphingeneral.desktop +++ b/src/settings/kcm/kcmdolphingeneral.desktop @@ -95,6 +95,7 @@ X-DocPath=dolphin/index.html#preferences-dialog-general # ctxt: Random file browsing settings. Name=General Name[ar]=عامّ +Name[ast]=Xeneral Name[ca]=General Name[ca@valencia]=General Name[cs]=Obecné @@ -177,6 +178,7 @@ Comment[zh_CN]=配置常规文件管理器设置 Comment[zh_TW]=設定一般檔案管理員 X-KDE-Keywords=file manager X-KDE-Keywords[ar]=مدير ملفّات ملفات الملفّات الملفات +X-KDE-Keywords[ast]=xestor de ficheros X-KDE-Keywords[ca]=gestor de fitxers X-KDE-Keywords[ca@valencia]=gestor de fitxers X-KDE-Keywords[cs]=správce souborů diff --git a/src/settings/kcm/kcmdolphinnavigation.desktop b/src/settings/kcm/kcmdolphinnavigation.desktop index e03a336de..9280624d6 100644 --- a/src/settings/kcm/kcmdolphinnavigation.desktop +++ b/src/settings/kcm/kcmdolphinnavigation.desktop @@ -94,6 +94,7 @@ X-KDE-ParentApp=kcontrol X-DocPath=dolphin/index.html#preferences-dialog-navigation Name=Navigation Name[ar]=التّنقّل +Name[ast]=Navegación Name[ca]=Navegació Name[ca@valencia]=Navegació Name[cs]=Navigace @@ -178,6 +179,7 @@ Comment[zh_CN]=配置文件管理器导航 Comment[zh_TW]=設定檔案管理員導覽 X-KDE-Keywords=file manager X-KDE-Keywords[ar]=مدير ملفّات ملفات الملفّات الملفات +X-KDE-Keywords[ast]=xestor de ficheros X-KDE-Keywords[ca]=gestor de fitxers X-KDE-Keywords[ca@valencia]=gestor de fitxers X-KDE-Keywords[cs]=správce souborů diff --git a/src/settings/kcm/kcmdolphinservices.desktop b/src/settings/kcm/kcmdolphinservices.desktop index 2905db14b..42e0538fa 100644 --- a/src/settings/kcm/kcmdolphinservices.desktop +++ b/src/settings/kcm/kcmdolphinservices.desktop @@ -1,5 +1,6 @@ Name=Dolphin Services Name[ar]=خدمات دولفين +Name[ast]=Servicios de Dolphin Name[ca]=Serveis del Dolphin Name[ca@valencia]=Serveis del Dolphin Name[cs]=Služby Dolphinu @@ -52,6 +53,7 @@ X-KDE-ParentApp=kcontrol X-DocPath=dolphin/index.html#preferences-dialog-services Name=Services Name[ar]=الخدمات +Name[ast]=Servicios Name[ca]=Serveis Name[ca@valencia]=Serveis Name[cs]=Služby @@ -134,6 +136,7 @@ Comment[zh_CN]=配置文件管理器服务 Comment[zh_TW]=設定檔案管理員服務 X-KDE-Keywords=file manager X-KDE-Keywords[ar]=مدير ملفّات ملفات الملفّات الملفات +X-KDE-Keywords[ast]=xestor de ficheros X-KDE-Keywords[ca]=gestor de fitxers X-KDE-Keywords[ca@valencia]=gestor de fitxers X-KDE-Keywords[cs]=správce souborů diff --git a/src/settings/kcm/kcmdolphinviewmodes.desktop b/src/settings/kcm/kcmdolphinviewmodes.desktop index 21ee6cf75..0be2656a0 100644 --- a/src/settings/kcm/kcmdolphinviewmodes.desktop +++ b/src/settings/kcm/kcmdolphinviewmodes.desktop @@ -178,6 +178,7 @@ Comment[zh_CN]=配置文件管理器视图模式 Comment[zh_TW]=設定檔案管理員檢視模式 X-KDE-Keywords=file manager X-KDE-Keywords[ar]=مدير ملفّات ملفات الملفّات الملفات +X-KDE-Keywords[ast]=xestor de ficheros X-KDE-Keywords[ca]=gestor de fitxers X-KDE-Keywords[ca@valencia]=gestor de fitxers X-KDE-Keywords[cs]=správce souborů -- cgit v1.3 From 63a591f32a56cb4caac9a616d21fab0f37c8d827 Mon Sep 17 00:00:00 2001 From: John Salatas Date: Sat, 14 Jan 2017 04:26:14 -0800 Subject: Show full path in title bar BUG: 229810 Differential Revision: https://phabricator.kde.org/D4078 --- src/dolphinmainwindow.cpp | 15 ++++++++++----- src/settings/dolphin_generalsettings.kcfg | 4 ++++ src/settings/startup/startupsettingspage.cpp | 8 +++++++- src/settings/startup/startupsettingspage.h | 1 + 4 files changed, 22 insertions(+), 6 deletions(-) (limited to 'src/settings') diff --git a/src/dolphinmainwindow.cpp b/src/dolphinmainwindow.cpp index e5103fd42..deb5d5e57 100644 --- a/src/dolphinmainwindow.cpp +++ b/src/dolphinmainwindow.cpp @@ -961,13 +961,17 @@ void DolphinMainWindow::setUrlAsCaption(const QUrl& url) } } - QString fileName = url.adjusted(QUrl::StripTrailingSlash).fileName(); - if (fileName.isEmpty()) { - fileName = '/'; + if (GeneralSettings::showFullPathInTitlebar()) { + const QString path = url.adjusted(QUrl::StripTrailingSlash).path(); + caption.append(path); + } else { + QString fileName = url.adjusted(QUrl::StripTrailingSlash).fileName(); + if (fileName.isEmpty()) { + fileName = '/'; + } + caption.append(fileName); } - caption.append(fileName); - setWindowTitle(caption); } @@ -1404,6 +1408,7 @@ void DolphinMainWindow::refreshViews() const bool splitView = GeneralSettings::splitView(); m_tabWidget->currentTabPage()->setSplitViewEnabled(splitView); updateSplitAction(); + setUrlAsCaption(activeViewContainer()->url()); } emit settingsChanged(); diff --git a/src/settings/dolphin_generalsettings.kcfg b/src/settings/dolphin_generalsettings.kcfg index c724afcd1..5878abcbe 100644 --- a/src/settings/dolphin_generalsettings.kcfg +++ b/src/settings/dolphin_generalsettings.kcfg @@ -22,6 +22,10 @@ false + + + false + 0 diff --git a/src/settings/startup/startupsettingspage.cpp b/src/settings/startup/startupsettingspage.cpp index 6554493d8..f076f16c7 100644 --- a/src/settings/startup/startupsettingspage.cpp +++ b/src/settings/startup/startupsettingspage.cpp @@ -46,7 +46,8 @@ StartupSettingsPage::StartupSettingsPage(const QUrl& url, QWidget* parent) : m_splitView(0), m_editableUrl(0), m_showFullPath(0), - m_filterBar(0) + m_filterBar(0), + m_showFullPathInTitlebar(0) { QVBoxLayout* topLayout = new QVBoxLayout(this); QWidget* vBox = new QWidget(this); @@ -104,6 +105,8 @@ StartupSettingsPage::StartupSettingsPage(const QUrl& url, QWidget* parent) : vBoxLayout->addWidget(m_showFullPath); m_filterBar = new QCheckBox(i18nc("@option:check Startup Settings", "Show filter bar"), vBox); vBoxLayout->addWidget(m_filterBar); + m_showFullPathInTitlebar = new QCheckBox(i18nc("@option:check Startup Settings", "Show full path in title bar"), vBox); + vBoxLayout->addWidget(m_showFullPathInTitlebar); // Add a dummy widget with no restriction regarding // a vertical resizing. This assures that the dialog layout @@ -119,6 +122,7 @@ StartupSettingsPage::StartupSettingsPage(const QUrl& url, QWidget* parent) : connect(m_editableUrl, &QCheckBox::toggled, this, &StartupSettingsPage::slotSettingsChanged); connect(m_showFullPath, &QCheckBox::toggled, this, &StartupSettingsPage::slotSettingsChanged); connect(m_filterBar, &QCheckBox::toggled, this, &StartupSettingsPage::slotSettingsChanged); + connect(m_showFullPathInTitlebar, &QCheckBox::toggled, this, &StartupSettingsPage::slotSettingsChanged); } StartupSettingsPage::~StartupSettingsPage() @@ -141,6 +145,7 @@ void StartupSettingsPage::applySettings() settings->setEditableUrl(m_editableUrl->isChecked()); settings->setShowFullPath(m_showFullPath->isChecked()); settings->setFilterBar(m_filterBar->isChecked()); + settings->setShowFullPathInTitlebar(m_showFullPathInTitlebar->isChecked()); settings->save(); } @@ -190,4 +195,5 @@ void StartupSettingsPage::loadSettings() m_editableUrl->setChecked(GeneralSettings::editableUrl()); m_showFullPath->setChecked(GeneralSettings::showFullPath()); m_filterBar->setChecked(GeneralSettings::filterBar()); + m_showFullPathInTitlebar->setChecked(GeneralSettings::showFullPathInTitlebar()); } diff --git a/src/settings/startup/startupsettingspage.h b/src/settings/startup/startupsettingspage.h index 9bcc31131..7a69cd3d6 100644 --- a/src/settings/startup/startupsettingspage.h +++ b/src/settings/startup/startupsettingspage.h @@ -62,6 +62,7 @@ private: QCheckBox* m_editableUrl; QCheckBox* m_showFullPath; QCheckBox* m_filterBar; + QCheckBox* m_showFullPathInTitlebar; }; #endif -- cgit v1.3 From 0aed243bebae72d85aa06032bdf2d6ba2b58141d Mon Sep 17 00:00:00 2001 From: Don Nguyen Date: Sat, 21 Jan 2017 00:04:38 +0100 Subject: Change "Date" to "Modified" and allow access to new "Accessed" time field This is merge of #128964 and #128942. This will impelement changing the "Date" field to "Modified" and allow a new "Accessed" time field to be available. This also includes changes to update configuration files. REVIEW: 129077 --- src/kitemviews/kfileitemlistwidget.cpp | 2 +- src/kitemviews/kfileitemmodel.cpp | 58 ++++++++++++++++++++-------------- src/kitemviews/kfileitemmodel.h | 4 +-- src/panels/places/placesitemmodel.cpp | 2 +- src/settings/viewpropertiesdialog.cpp | 2 +- src/tests/kfileitemmodeltest.cpp | 8 ++--- src/views/viewproperties.cpp | 31 ++++++++++++++++-- src/views/viewproperties.h | 6 ++++ 8 files changed, 78 insertions(+), 35 deletions(-) (limited to 'src/settings') diff --git a/src/kitemviews/kfileitemlistwidget.cpp b/src/kitemviews/kfileitemlistwidget.cpp index 7e5b4bb13..e0548ab2a 100644 --- a/src/kitemviews/kfileitemlistwidget.cpp +++ b/src/kitemviews/kfileitemlistwidget.cpp @@ -80,7 +80,7 @@ QString KFileItemListWidgetInformant::roleText(const QByteArray& role, const KIO::filesize_t size = roleValue.value(); text = KFormat().formatByteSize(size); } - } else if (role == "date") { + } else if (role == "modificationtime" || role == "accesstime") { const QDateTime dateTime = roleValue.toDateTime(); text = QLocale().toString(dateTime, QLocale::ShortFormat); } else { diff --git a/src/kitemviews/kfileitemmodel.cpp b/src/kitemviews/kfileitemmodel.cpp index aaa628102..7e14baff0 100644 --- a/src/kitemviews/kfileitemmodel.cpp +++ b/src/kitemviews/kfileitemmodel.cpp @@ -328,7 +328,8 @@ QList > KFileItemModel::groups() const switch (typeForRole(sortRole())) { case NameRole: m_groups = nameRoleGroups(); break; case SizeRole: m_groups = sizeRoleGroups(); break; - case DateRole: m_groups = dateRoleGroups(); break; + case ModificationTimeRole: m_groups = timeRoleGroups(KFileItem::ModificationTime); break; + case AccessTimeRole: m_groups = timeRoleGroups(KFileItem::AccessTime); break; case PermissionsRole: m_groups = permissionRoleGroups(); break; case RatingRole: m_groups = ratingRoleGroups(); break; default: m_groups = genericStringRoleGroups(sortRole()); break; @@ -1532,12 +1533,20 @@ QHash KFileItemModel::retrieveData(const KFileItem& item, data.insert(sharedValue("size"), item.size()); } - if (m_requestRole[DateRole]) { + if (m_requestRole[ModificationTimeRole]) { // Don't use KFileItem::timeString() as this is too expensive when // having several thousands of items. Instead the formatting of the // date-time will be done on-demand by the view when the date will be shown. const QDateTime dateTime = item.time(KFileItem::ModificationTime); - data.insert(sharedValue("date"), dateTime); + data.insert(sharedValue("modificationtime"), dateTime); + } + + if (m_requestRole[AccessTimeRole]) { + // Don't use KFileItem::timeString() as this is too expensive when + // having several thousands of items. Instead the formatting of the + // date-time will be done on-demand by the view when the date will be shown. + const QDateTime dateTime = item.time(KFileItem::AccessTime); + data.insert(sharedValue("accesstime"), dateTime); } if (m_requestRole[PermissionsRole]) { @@ -1762,7 +1771,7 @@ int KFileItemModel::sortRoleCompare(const ItemData* a, const ItemData* b, const break; } - case DateRole: { + case ModificationTimeRole: { const QDateTime dateTimeA = itemA.time(KFileItem::ModificationTime); const QDateTime dateTimeB = itemB.time(KFileItem::ModificationTime); if (dateTimeA < dateTimeB) { @@ -1942,7 +1951,7 @@ QList > KFileItemModel::sizeRoleGroups() const return groups; } -QList > KFileItemModel::dateRoleGroups() const +QList > KFileItemModel::timeRoleGroups(KFileItem::FileTimes which) const { Q_ASSERT(!m_itemData.isEmpty()); @@ -1951,26 +1960,26 @@ QList > KFileItemModel::dateRoleGroups() const const QDate currentDate = QDate::currentDate(); - QDate previousModifiedDate; + QDate previousFileDate; QString groupValue; for (int i = 0; i <= maxIndex; ++i) { if (isChildItem(i)) { continue; } - const QDateTime modifiedTime = m_itemData.at(i)->item.time(KFileItem::ModificationTime); - const QDate modifiedDate = modifiedTime.date(); - if (modifiedDate == previousModifiedDate) { + const QDateTime fileTime = m_itemData.at(i)->item.time(which); + const QDate fileDate = fileTime.date(); + if (fileDate == previousFileDate) { // The current item is in the same group as the previous item continue; } - previousModifiedDate = modifiedDate; + previousFileDate = fileDate; - const int daysDistance = modifiedDate.daysTo(currentDate); + const int daysDistance = fileDate.daysTo(currentDate); QString newGroupValue; - if (currentDate.year() == modifiedDate.year() && - currentDate.month() == modifiedDate.month()) { + if (currentDate.year() == fileDate.year() && + currentDate.month() == fileDate.month()) { switch (daysDistance / 7) { case 0: @@ -1978,7 +1987,7 @@ QList > KFileItemModel::dateRoleGroups() const case 0: newGroupValue = i18nc("@title:group Date", "Today"); break; case 1: newGroupValue = i18nc("@title:group Date", "Yesterday"); break; default: - newGroupValue = modifiedTime.toString( + newGroupValue = fileTime.toString( i18nc("@title:group Date: The week day name: dddd", "dddd")); newGroupValue = i18nc("Can be used to script translation of \"dddd\"" "with context @title:group Date", "%1", newGroupValue); @@ -2002,18 +2011,18 @@ QList > KFileItemModel::dateRoleGroups() const } } else { const QDate lastMonthDate = currentDate.addMonths(-1); - if (lastMonthDate.year() == modifiedDate.year() && - lastMonthDate.month() == modifiedDate.month()) { + if (lastMonthDate.year() == fileDate.year() && + lastMonthDate.month() == fileDate.month()) { if (daysDistance == 1) { - newGroupValue = modifiedTime.toString(i18nc("@title:group Date: " + newGroupValue = fileTime.toString(i18nc("@title:group Date: " "MMMM is full month name in current locale, and yyyy is " "full year number", "'Yesterday' (MMMM, yyyy)")); newGroupValue = i18nc("Can be used to script translation of " "\"'Yesterday' (MMMM, yyyy)\" with context @title:group Date", "%1", newGroupValue); } else if (daysDistance <= 7) { - newGroupValue = modifiedTime.toString(i18nc("@title:group Date: " + newGroupValue = fileTime.toString(i18nc("@title:group Date: " "The week day name: dddd, MMMM is full month name " "in current locale, and yyyy is full year number", "dddd (MMMM, yyyy)")); @@ -2021,28 +2030,28 @@ QList > KFileItemModel::dateRoleGroups() const "\"dddd (MMMM, yyyy)\" with context @title:group Date", "%1", newGroupValue); } else if (daysDistance <= 7 * 2) { - newGroupValue = modifiedTime.toString(i18nc("@title:group Date: " + newGroupValue = fileTime.toString(i18nc("@title:group Date: " "MMMM is full month name in current locale, and yyyy is " "full year number", "'One Week Ago' (MMMM, yyyy)")); newGroupValue = i18nc("Can be used to script translation of " "\"'One Week Ago' (MMMM, yyyy)\" with context @title:group Date", "%1", newGroupValue); } else if (daysDistance <= 7 * 3) { - newGroupValue = modifiedTime.toString(i18nc("@title:group Date: " + newGroupValue = fileTime.toString(i18nc("@title:group Date: " "MMMM is full month name in current locale, and yyyy is " "full year number", "'Two Weeks Ago' (MMMM, yyyy)")); newGroupValue = i18nc("Can be used to script translation of " "\"'Two Weeks Ago' (MMMM, yyyy)\" with context @title:group Date", "%1", newGroupValue); } else if (daysDistance <= 7 * 4) { - newGroupValue = modifiedTime.toString(i18nc("@title:group Date: " + newGroupValue = fileTime.toString(i18nc("@title:group Date: " "MMMM is full month name in current locale, and yyyy is " "full year number", "'Three Weeks Ago' (MMMM, yyyy)")); newGroupValue = i18nc("Can be used to script translation of " "\"'Three Weeks Ago' (MMMM, yyyy)\" with context @title:group Date", "%1", newGroupValue); } else { - newGroupValue = modifiedTime.toString(i18nc("@title:group Date: " + newGroupValue = fileTime.toString(i18nc("@title:group Date: " "MMMM is full month name in current locale, and yyyy is " "full year number", "'Earlier on' MMMM, yyyy")); newGroupValue = i18nc("Can be used to script translation of " @@ -2050,7 +2059,7 @@ QList > KFileItemModel::dateRoleGroups() const "%1", newGroupValue); } } else { - newGroupValue = modifiedTime.toString(i18nc("@title:group " + newGroupValue = fileTime.toString(i18nc("@title:group " "The month and year: MMMM is full month name in current locale, " "and yyyy is full year number", "MMMM, yyyy")); newGroupValue = i18nc("Can be used to script translation of " @@ -2221,7 +2230,8 @@ const KFileItemModel::RoleInfoMap* KFileItemModel::rolesInfoMap(int& count) { 0, NoRole, 0, 0, 0, 0, false, false }, { "text", NameRole, I18N_NOOP2_NOSTRIP("@label", "Name"), 0, 0, false, false }, { "size", SizeRole, I18N_NOOP2_NOSTRIP("@label", "Size"), 0, 0, false, false }, - { "date", DateRole, I18N_NOOP2_NOSTRIP("@label", "Date"), 0, 0, false, false }, + { "modificationtime", ModificationTimeRole, I18N_NOOP2_NOSTRIP("@label", "Modified"), 0, 0, false, false }, + { "accesstime", AccessTimeRole, I18N_NOOP2_NOSTRIP("@label", "Accessed"), 0, 0, false, false }, { "type", TypeRole, I18N_NOOP2_NOSTRIP("@label", "Type"), 0, 0, false, false }, { "rating", RatingRole, I18N_NOOP2_NOSTRIP("@label", "Rating"), 0, 0, true, false }, { "tags", TagsRole, I18N_NOOP2_NOSTRIP("@label", "Tags"), 0, 0, true, false }, diff --git a/src/kitemviews/kfileitemmodel.h b/src/kitemviews/kfileitemmodel.h index 717afb9a7..dc5746a89 100644 --- a/src/kitemviews/kfileitemmodel.h +++ b/src/kitemviews/kfileitemmodel.h @@ -280,7 +280,7 @@ private slots: private: enum RoleType { // User visible roles: - NoRole, NameRole, SizeRole, DateRole, PermissionsRole, OwnerRole, + NoRole, NameRole, SizeRole, ModificationTimeRole, AccessTimeRole, PermissionsRole, OwnerRole, GroupRole, TypeRole, DestinationRole, PathRole, // User visible roles available with Baloo: CommentRole, TagsRole, RatingRole, ImageSizeRole, OrientationRole, @@ -383,7 +383,7 @@ private: QList > nameRoleGroups() const; QList > sizeRoleGroups() const; - QList > dateRoleGroups() const; + QList > timeRoleGroups(KFileItem::FileTimes which) const; QList > permissionRoleGroups() const; QList > ratingRoleGroups() const; QList > genericStringRoleGroups(const QByteArray& typeForRole) const; diff --git a/src/panels/places/placesitemmodel.cpp b/src/panels/places/placesitemmodel.cpp index 25c4d51f6..8a02ead01 100644 --- a/src/panels/places/placesitemmodel.cpp +++ b/src/panels/places/placesitemmodel.cpp @@ -872,7 +872,7 @@ PlacesItem* PlacesItemModel::createSystemPlacesItem(const SystemBookmarkData& da props.setVisibleRoles({"text"}); } else if (data.url.scheme() == QLatin1String("timeline")) { props.setViewMode(DolphinView::DetailsView); - props.setVisibleRoles({"text", "date"}); + props.setVisibleRoles({"text", "modificationtime"}); } } } diff --git a/src/settings/viewpropertiesdialog.cpp b/src/settings/viewpropertiesdialog.cpp index 7407042d7..c317ed052 100644 --- a/src/settings/viewpropertiesdialog.cpp +++ b/src/settings/viewpropertiesdialog.cpp @@ -303,7 +303,7 @@ void ViewPropertiesDialog::configureAdditionalInfo() visibleRoles.clear(); visibleRoles.append("text"); visibleRoles.append("size"); - visibleRoles.append("date"); + visibleRoles.append("modificationtime"); m_viewProps->setVisibleRoles(visibleRoles); } diff --git a/src/tests/kfileitemmodeltest.cpp b/src/tests/kfileitemmodeltest.cpp index ac15693b6..59ff63069 100644 --- a/src/tests/kfileitemmodeltest.cpp +++ b/src/tests/kfileitemmodeltest.cpp @@ -882,8 +882,8 @@ void KFileItemModelTest::testSorting() // Sort by Date, descending m_model->setSortDirectoriesFirst(true); - m_model->setSortRole("date"); - QCOMPARE(m_model->sortRole(), QByteArray("date")); + m_model->setSortRole("modificationtime"); + QCOMPARE(m_model->sortRole(), QByteArray("modificationtime")); QCOMPARE(m_model->sortOrder(), Qt::DescendingOrder); QCOMPARE(itemsInModel(), QStringList() << "c" << "c-2" << "c-3" << "c-1" << "b" << "d" << "a" << "e"); QCOMPARE(itemsMovedSpy.count(), 1); @@ -892,7 +892,7 @@ void KFileItemModelTest::testSorting() // Sort by Date, ascending m_model->setSortOrder(Qt::AscendingOrder); - QCOMPARE(m_model->sortRole(), QByteArray("date")); + QCOMPARE(m_model->sortRole(), QByteArray("modificationtime")); QCOMPARE(m_model->sortOrder(), Qt::AscendingOrder); QCOMPARE(itemsInModel(), QStringList() << "c" << "c-2" << "c-3" << "c-1" << "e" << "a" << "d" << "b"); QCOMPARE(itemsMovedSpy.count(), 1); @@ -901,7 +901,7 @@ void KFileItemModelTest::testSorting() // Sort by Date, ascending, 'Sort Folders First' disabled m_model->setSortDirectoriesFirst(false); - QCOMPARE(m_model->sortRole(), QByteArray("date")); + QCOMPARE(m_model->sortRole(), QByteArray("modificationtime")); QCOMPARE(m_model->sortOrder(), Qt::AscendingOrder); QVERIFY(!m_model->sortDirectoriesFirst()); QCOMPARE(itemsInModel(), QStringList() << "e" << "a" << "c" << "c-1" << "c-2" << "c-3" << "d" << "b"); diff --git a/src/views/viewproperties.cpp b/src/views/viewproperties.cpp index 597baa293..ca52be890 100644 --- a/src/views/viewproperties.cpp +++ b/src/views/viewproperties.cpp @@ -35,7 +35,8 @@ namespace { const int AdditionalInfoViewPropertiesVersion = 1; const int NameRolePropertiesVersion = 2; - const int CurrentViewPropertiesVersion = 3; + const int DateRolePropertiesVersion = 4; + const int CurrentViewPropertiesVersion = 4; // String representation to mark the additional properties of // the details view as customized by the user. See @@ -123,6 +124,11 @@ ViewProperties::ViewProperties(const QUrl& url) : Q_ASSERT(m_node->version() == NameRolePropertiesVersion); } + if (m_node->version() < DateRolePropertiesVersion) { + convertDateRoleToModificationTimeRole(); + Q_ASSERT(m_node->version() == DateRolePropertiesVersion); + } + m_node->setVersion(CurrentViewPropertiesVersion); } } @@ -309,7 +315,7 @@ QList ViewProperties::visibleRoles() const && !visibleRoles.contains(CustomizedDetailsString); if (useDefaultValues) { roles.append("size"); - roles.append("date"); + roles.append("modificationtime"); } return roles; @@ -448,6 +454,27 @@ void ViewProperties::convertNameRoleToTextRole() update(); } +void ViewProperties::convertDateRoleToModificationTimeRole() +{ + QStringList visibleRoles = m_node->visibleRoles(); + for (int i = 0; i < visibleRoles.count(); ++i) { + if (visibleRoles[i].endsWith(QLatin1String("_date"))) { + const int leftLength = visibleRoles[i].length() - 5; + visibleRoles[i] = visibleRoles[i].left(leftLength) + "_modificationtime"; + } + } + + QString sortRole = m_node->sortRole(); + if (sortRole == QLatin1String("date")) { + sortRole = QStringLiteral("modificationtime"); + } + + m_node->setVisibleRoles(visibleRoles); + m_node->setSortRole(sortRole); + m_node->setVersion(DateRolePropertiesVersion); + update(); +} + bool ViewProperties::isPartOfHome(const QString& filePath) { // For performance reasons cache the path in a static QString diff --git a/src/views/viewproperties.h b/src/views/viewproperties.h index dc118e2d7..05b80f455 100644 --- a/src/views/viewproperties.h +++ b/src/views/viewproperties.h @@ -153,6 +153,12 @@ private: */ void convertNameRoleToTextRole(); + /** + * Provides backward compatibility with .directory files created with + * Dolphin < 16.11.70: Converts the old name-role "date" to "modificationtime" + */ + + void convertDateRoleToModificationTimeRole(); /** * Returns true, if \a filePath is part of the home-path (see QDir::homePath()). */ -- cgit v1.3 From 0b107078c3b54b96522ea8963876511e4157845c Mon Sep 17 00:00:00 2001 From: Elvis Angelaccio Date: Sun, 5 Feb 2017 22:58:36 +0100 Subject: Remove deprecated K_EXPORT_PLUGIN macros They do nothing, other than generate annoying compiler warnings. Differential Revision: https://phabricator.kde.org/D4438 --- src/settings/kcm/kcmdolphingeneral.cpp | 1 - src/settings/kcm/kcmdolphinnavigation.cpp | 1 - src/settings/kcm/kcmdolphinservices.cpp | 1 - src/settings/kcm/kcmdolphinviewmodes.cpp | 1 - 4 files changed, 4 deletions(-) (limited to 'src/settings') diff --git a/src/settings/kcm/kcmdolphingeneral.cpp b/src/settings/kcm/kcmdolphingeneral.cpp index 3cf7e7652..f5ac4cd55 100644 --- a/src/settings/kcm/kcmdolphingeneral.cpp +++ b/src/settings/kcm/kcmdolphingeneral.cpp @@ -32,7 +32,6 @@ #include K_PLUGIN_FACTORY(KCMDolphinGeneralConfigFactory, registerPlugin(QStringLiteral("dolphingeneral"));) -K_EXPORT_PLUGIN(KCMDolphinGeneralConfigFactory("kcmdolphingeneral")) DolphinGeneralConfigModule::DolphinGeneralConfigModule(QWidget* parent, const QVariantList& args) : KCModule(parent), diff --git a/src/settings/kcm/kcmdolphinnavigation.cpp b/src/settings/kcm/kcmdolphinnavigation.cpp index 7bdcfc534..9ec6ca166 100644 --- a/src/settings/kcm/kcmdolphinnavigation.cpp +++ b/src/settings/kcm/kcmdolphinnavigation.cpp @@ -27,7 +27,6 @@ #include K_PLUGIN_FACTORY(KCMDolphinNavigationConfigFactory, registerPlugin(QStringLiteral("dolphinnavigation"));) -K_EXPORT_PLUGIN(KCMDolphinNavigationConfigFactory("kcmdolphinnavigation")) DolphinNavigationConfigModule::DolphinNavigationConfigModule(QWidget* parent, const QVariantList& args) : KCModule(parent), diff --git a/src/settings/kcm/kcmdolphinservices.cpp b/src/settings/kcm/kcmdolphinservices.cpp index 4885adf4f..39136724e 100644 --- a/src/settings/kcm/kcmdolphinservices.cpp +++ b/src/settings/kcm/kcmdolphinservices.cpp @@ -27,7 +27,6 @@ #include K_PLUGIN_FACTORY(KCMDolphinServicesConfigFactory, registerPlugin(QStringLiteral("dolphinservices"));) -K_EXPORT_PLUGIN(KCMDolphinServicesConfigFactory("kcmdolphinservices")) DolphinServicesConfigModule::DolphinServicesConfigModule(QWidget* parent, const QVariantList& args) : KCModule(parent), diff --git a/src/settings/kcm/kcmdolphinviewmodes.cpp b/src/settings/kcm/kcmdolphinviewmodes.cpp index 9b4aa0dc7..710ebc70b 100644 --- a/src/settings/kcm/kcmdolphinviewmodes.cpp +++ b/src/settings/kcm/kcmdolphinviewmodes.cpp @@ -33,7 +33,6 @@ #include K_PLUGIN_FACTORY(KCMDolphinViewModesConfigFactory, registerPlugin(QStringLiteral("dolphinviewmodes"));) -K_EXPORT_PLUGIN(KCMDolphinViewModesConfigFactory("kcmdolphinviewmodes")) DolphinViewModesConfigModule::DolphinViewModesConfigModule(QWidget* parent, const QVariantList& args) : KCModule(parent), -- cgit v1.3 From 333e2ae031fec6139a712f15283f0fffb23f2dc6 Mon Sep 17 00:00:00 2001 From: Kai Uwe Broulik Date: Wed, 8 Feb 2017 16:07:19 +0100 Subject: [Settings Dialog] Show Trash settings only if authorized If this KCM is disabled through KIOSK restriction opening it would result in an error message. Hide the entry altogether in this case. Differential Revision: https://phabricator.kde.org/D4502 --- src/settings/dolphinsettingsdialog.cpp | 21 ++++++++++++++++----- src/settings/dolphinsettingsdialog.h | 2 ++ 2 files changed, 18 insertions(+), 5 deletions(-) (limited to 'src/settings') diff --git a/src/settings/dolphinsettingsdialog.cpp b/src/settings/dolphinsettingsdialog.cpp index 9eb57f10b..5314c24ed 100644 --- a/src/settings/dolphinsettingsdialog.cpp +++ b/src/settings/dolphinsettingsdialog.cpp @@ -29,6 +29,7 @@ #include "viewmodes/viewsettingspage.h" #include "trash/trashsettingspage.h" +#include #include #include #include @@ -85,11 +86,13 @@ DolphinSettingsDialog::DolphinSettingsDialog(const QUrl& url, QWidget* parent) : connect(servicesSettingsPage, &ServicesSettingsPage::changed, this, &DolphinSettingsDialog::enableApply); // Trash - TrashSettingsPage* trashSettingsPage = new TrashSettingsPage(this); - KPageWidgetItem* trashSettingsFrame = addPage(trashSettingsPage, - i18nc("@title:group", "Trash")); - trashSettingsFrame->setIcon(QIcon::fromTheme(QStringLiteral("trash-empty"))); - connect(trashSettingsPage, &TrashSettingsPage::changed, this, &DolphinSettingsDialog::enableApply); + auto* trashSettingsPage = createTrashSettingsPage(this); + if (trashSettingsPage) { + KPageWidgetItem* trashSettingsFrame = addPage(trashSettingsPage, + i18nc("@title:group", "Trash")); + trashSettingsFrame->setIcon(QIcon::fromTheme(QStringLiteral("trash-empty"))); + connect(trashSettingsPage, &TrashSettingsPage::changed, this, &DolphinSettingsDialog::enableApply); + } // General GeneralSettingsPage* generalSettingsPage = new GeneralSettingsPage(url, this); @@ -145,3 +148,11 @@ void DolphinSettingsDialog::restoreDefaults() } } +SettingsPageBase *DolphinSettingsDialog::createTrashSettingsPage(QWidget *parent) +{ + if (!KAuthorized::authorizeControlModule(QStringLiteral("kcmtrash.desktop"))) { + return nullptr; + } + + return new TrashSettingsPage(parent); +} diff --git a/src/settings/dolphinsettingsdialog.h b/src/settings/dolphinsettingsdialog.h index 93f714799..194af28fc 100644 --- a/src/settings/dolphinsettingsdialog.h +++ b/src/settings/dolphinsettingsdialog.h @@ -49,6 +49,8 @@ private slots: void restoreDefaults(); private: + static SettingsPageBase *createTrashSettingsPage(QWidget *parent); + QList m_pages; }; -- cgit v1.3 From 7fce8f0e9b1e0bb2deb6e32fe88d5411b9be2834 Mon Sep 17 00:00:00 2001 From: Kai Uwe Broulik Date: Mon, 13 Feb 2017 13:51:05 +0100 Subject: Don't add trashSettingsPage to m_pages if null Otherwise we might crash in applySettings() or restoreDefaults() --- src/settings/dolphinsettingsdialog.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/settings') diff --git a/src/settings/dolphinsettingsdialog.cpp b/src/settings/dolphinsettingsdialog.cpp index 5314c24ed..50fd41e4c 100644 --- a/src/settings/dolphinsettingsdialog.cpp +++ b/src/settings/dolphinsettingsdialog.cpp @@ -105,7 +105,9 @@ DolphinSettingsDialog::DolphinSettingsDialog(const QUrl& url, QWidget* parent) : m_pages.append(viewSettingsPage); m_pages.append(navigationSettingsPage); m_pages.append(servicesSettingsPage); - m_pages.append(trashSettingsPage); + if (trashSettingsPage) { + m_pages.append(trashSettingsPage); + } m_pages.append(generalSettingsPage); const KConfigGroup dialogConfig(KSharedConfig::openConfig(QStringLiteral("dolphinrc")), "SettingsDialog"); -- cgit v1.3