From d6121f3f5c2504bfff17c68ac5518f5b1caa3b7d Mon Sep 17 00:00:00 2001 From: Kai Uwe Broulik Date: Wed, 5 Apr 2017 15:35:40 +0200 Subject: [PATCH] [desktop:/ KIO] Add descriptive name for root item This way Folder View could use the root item for its heading instead of special-casing it for desktop:/ Differential Revision: https://phabricator.kde.org/D5221 --- kioslave/desktop/CMakeLists.txt | 4 +++- kioslave/desktop/Messages.sh | 2 ++ kioslave/desktop/kio_desktop.cpp | 7 +++++++ 3 files changed, 12 insertions(+), 1 deletion(-) create mode 100644 kioslave/desktop/Messages.sh diff --git a/kioslave/desktop/CMakeLists.txt b/kioslave/desktop/CMakeLists.txt index e4ab6712b..6620e0dd3 100644 --- a/kioslave/desktop/CMakeLists.txt +++ b/kioslave/desktop/CMakeLists.txt @@ -1,8 +1,10 @@ +add_definitions(-DTRANSLATION_DOMAIN=\"kio_desktop\") + add_subdirectory(tests) add_library(kio_desktop MODULE kio_desktop.cpp) -target_link_libraries(kio_desktop Qt5::DBus Qt5::Gui KF5::KIOCore) +target_link_libraries(kio_desktop Qt5::DBus Qt5::Gui KF5::KIOCore KF5::I18n) set_target_properties(kio_desktop PROPERTIES OUTPUT_NAME "desktop") diff --git a/kioslave/desktop/Messages.sh b/kioslave/desktop/Messages.sh new file mode 100644 index 000000000..092f8fd26 --- /dev/null +++ b/kioslave/desktop/Messages.sh @@ -0,0 +1,2 @@ +#! /usr/bin/env bash +$XGETTEXT `find . -name \*.cpp` -o $podir/kio_desktop.pot diff --git a/kioslave/desktop/kio_desktop.cpp b/kioslave/desktop/kio_desktop.cpp index fb7f9c780..06616d1ae 100644 --- a/kioslave/desktop/kio_desktop.cpp +++ b/kioslave/desktop/kio_desktop.cpp @@ -22,6 +22,7 @@ #include #include #include +#include #include #include @@ -166,6 +167,12 @@ void DesktopProtocol::prepareUDSEntry(KIO::UDSEntry &entry, bool listing) const entry.insert(KIO::UDSEntry::UDS_HIDDEN, 1); } + // Set a descriptive display name for the root item + if (requestedUrl().path() == QLatin1String("/") + && entry.stringValue(KIO::UDSEntry::UDS_NAME) == QLatin1String(".")) { + entry.insert(KIO::UDSEntry::UDS_DISPLAY_NAME, i18n("Desktop Folder")); + } + // Set the target URL to the local path QUrl localUrl(QUrl::fromLocalFile(entry.stringValue(KIO::UDSEntry::UDS_LOCAL_PATH))); entry.insert(KIO::UDSEntry::UDS_TARGET_URL, localUrl.toString());