SVN commit 436469 by ervin: Finish to bring kio_home back from the dead and integrate it adequately with kio_system. Also provides an optional "Documents Folder" entry in system:/ if the document path is different from $HOME. M +1 -1 Makefile.am M +3 -1 system/entries/Makefile.am A system/entries/documents.desktop M +2 -5 system/entries/home.desktop AM system/entries/kio_system_documenthelper M +0 -3 system/entries/media.desktop M +0 -3 system/entries/remote.desktop D system/entries/settings.desktop M +0 -3 system/entries/trash.desktop A system/entries/users.desktop M +12 -3 system/kdedmodule/systemdirnotify.cpp M +18 -2 system/systemimpl.cpp --- trunk/KDE/kdebase/kioslave/Makefile.am #436468:436469 @@ -8,4 +8,4 @@ SUBDIRS = about cgi floppy filter fish info mac man nfs nntp pop3 smtp \ sftp tar finger thumbnail $(LDAP_SUBDIR) $(SMB_SUBDIR) settings trash media \ - remote system + remote home system --- trunk/KDE/kdebase/kioslave/system/entries/Makefile.am #436468:436469 @@ -1,3 +1,5 @@ systemviewdir = $(kde_datadir)/systemview -systemview_DATA = home.desktop media.desktop remote.desktop settings.desktop trash.desktop +systemview_DATA = home.desktop documents.desktop users.desktop media.desktop remote.desktop trash.desktop +bin_SCRIPTS = kio_system_documenthelper + --- trunk/KDE/kdebase/kioslave/system/entries/home.desktop #436468:436469 @@ -1,8 +1,8 @@ [Desktop Entry] Encoding=UTF-8 Type=Link -URL=$HOME -Icon=kfm_home +Path=$HOME +Icon=folder_home Name=Home Folder Name[af]=Tuis Gids Name[ar]=مجلدي @@ -65,6 +65,3 @@ Name[wa]=Ridant måjhon Name[xx]=xxHome Folderxx Name[zh_CN]=主文件夹 -Open=false -X-KDE-TreeModule=Directory -X-KDE-KonqSidebarModule=konqsidebar_tree ** trunk/KDE/kdebase/kioslave/system/entries/kio_system_documenthelper #property changes Name: svn:executable + * --- trunk/KDE/kdebase/kioslave/system/entries/media.desktop #436468:436469 @@ -46,6 +46,3 @@ Name[uk]=Пристрої зберігання інформації Name[xx]=xxStorage Mediaxx Name[zh_CN]=存储介质 -Open=true -X-KDE-TreeModule=Directory -X-KDE-KonqSidebarModule=konqsidebar_tree --- trunk/KDE/kdebase/kioslave/system/entries/remote.desktop #436468:436469 @@ -45,6 +45,3 @@ Name[uk]=Відалені місця Name[xx]=xxRemote Placesxx Name[zh_CN]=远程位置 -Open=false -X-KDE-TreeModule=Directory -X-KDE-KonqSidebarModule=konqsidebar_tree --- trunk/KDE/kdebase/kioslave/system/entries/trash.desktop #436468:436469 @@ -76,6 +76,3 @@ Name[zh_CN]=回收站 Name[zh_TW]=垃圾桶 Name[zu]=Izibi -Open=false -X-KDE-TreeModule=Directory -X-KDE-KonqSidebarModule=konqsidebar_tree --- trunk/KDE/kdebase/kioslave/system/kdedmodule/systemdirnotify.cpp #436468:436469 @@ -60,9 +60,18 @@ KURL system_url("system:/"+system_name); - m_urlMap[desktop.readURL()] = system_url; - - names_found.append(*name); + if ( !desktop.readURL().isEmpty() ) + { + m_urlMap[desktop.readURL()] = system_url; + names_found.append( *name ); + } + else if ( !desktop.readPath().isEmpty() ) + { + KURL url; + url.setPath( desktop.readPath() ); + m_urlMap[url] = system_url; + names_found.append( *name ); + } } } } --- trunk/KDE/kdebase/kioslave/system/systemimpl.cpp #436468:436469 @@ -65,8 +65,11 @@ { entry.clear(); createEntry(entry, *dirpath, *filename); - list.append(entry); - names_found.append(*filename); + if ( !entry.isEmpty() ) + { + list.append(entry); + names_found.append(*filename); + } } } } @@ -166,6 +169,13 @@ if (*name==filename+".desktop") { KDesktopFile desktop(*dirpath+filename+".desktop", true); + if ( desktop.readURL().isEmpty() ) + { + KURL url; + url.setPath( desktop.readPath() ); + return url; + } + return desktop.readURL(); } } @@ -210,6 +220,12 @@ entry.clear(); + // Ensure that we really want this entry to be displayed + if ( desktop.readURL().isEmpty() && desktop.readPath().isEmpty() ) + { + return; + } + addAtom(entry, KIO::UDS_NAME, 0, desktop.readName()); QString new_filename = file;