mirror of
https://bitbucket.org/smil3y/kde-workspace.git
synced 2025-02-23 18:32:50 +00:00
dolphin: fake the root entry of filenamesearch slave
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
This commit is contained in:
parent
e31b04eaa2
commit
9a00dcda13
2 changed files with 22 additions and 5 deletions
|
@ -45,6 +45,25 @@ FileNameSearchProtocol::~FileNameSearchProtocol()
|
|||
cleanup();
|
||||
}
|
||||
|
||||
void FileNameSearchProtocol::stat(const KUrl &url)
|
||||
{
|
||||
const QString urlpath = url.path();
|
||||
if (urlpath.isEmpty() || urlpath == QLatin1String("/")) {
|
||||
// fake the root entry (for the icon)
|
||||
KIO::UDSEntry kioudsentry;
|
||||
kioudsentry.insert(KIO::UDSEntry::UDS_NAME, ".");
|
||||
kioudsentry.insert(KIO::UDSEntry::UDS_URL, "filenamesearch:/");
|
||||
kioudsentry.insert(KIO::UDSEntry::UDS_FILE_TYPE, S_IFDIR);
|
||||
kioudsentry.insert(KIO::UDSEntry::UDS_ACCESS, S_IRWXU | S_IRWXG | S_IRWXO);
|
||||
kioudsentry.insert(KIO::UDSEntry::UDS_ICON_NAME, "edit-find");
|
||||
kioudsentry.insert(KIO::UDSEntry::UDS_MIME_TYPE, "inode/directory");
|
||||
statEntry(kioudsentry);
|
||||
finished();
|
||||
return;
|
||||
}
|
||||
error(KIO::ERR_DOES_NOT_EXIST, url.prettyUrl());
|
||||
}
|
||||
|
||||
void FileNameSearchProtocol::listDir(const KUrl &url)
|
||||
{
|
||||
cleanup();
|
||||
|
@ -59,9 +78,7 @@ void FileNameSearchProtocol::listDir(const KUrl& url)
|
|||
}
|
||||
|
||||
m_checkContent = url.queryItemValue("checkContent");
|
||||
|
||||
m_literal = url.queryItemValue("literal");
|
||||
|
||||
m_checkType = url.queryItemValue("checkType");
|
||||
|
||||
|
||||
|
@ -94,9 +111,8 @@ void FileNameSearchProtocol::listDir(const KUrl& url)
|
|||
addItem = true;
|
||||
if (!m_checkType.isEmpty()) {
|
||||
addItem = false;
|
||||
const QStringList types = m_checkType.split(";");
|
||||
const KSharedPtr<KMimeType> mime = item.mimeTypePtr();
|
||||
foreach (const QString& t, types) {
|
||||
foreach (const QString &t, m_checkType.split(";")) {
|
||||
if (mime->is(t)) {
|
||||
addItem = true;
|
||||
}
|
||||
|
|
|
@ -42,6 +42,7 @@ public:
|
|||
FileNameSearchProtocol(const QByteArray &app);
|
||||
virtual ~FileNameSearchProtocol();
|
||||
|
||||
void stat(const KUrl &url) final;
|
||||
void listDir(const KUrl &url) final;
|
||||
|
||||
private:
|
||||
|
|
Loading…
Add table
Reference in a new issue