target_link_libraries(
dolphinprivate PUBLIC
KF5::FileMetaData
- KF5::BalooCore
- KF5::BalooFiles
+ KF5::Baloo
KF5::BalooNaturalQueryParser
KF5::BalooWidgets
)
#ifdef HAVE_BALOO
#include "private/kbaloorolesprovider.h"
#include <Baloo/File>
- #include <Baloo/FileFetchJob>
#include <Baloo/FileMonitor>
#endif
return;
}
- Baloo::FileFetchJob* job = new Baloo::FileFetchJob(item.localPath());
- connect(job, &Baloo::FileFetchJob::finished, this, &KFileItemModelRolesUpdater::applyChangedBalooRolesJobFinished);
- job->setProperty("item", QVariant::fromValue(item));
- job->start();
-#else
-#ifndef Q_CC_MSVC
- Q_UNUSED(itemUrl);
-#endif
-#endif
-}
-
-void KFileItemModelRolesUpdater::applyChangedBalooRolesJobFinished(KJob* kjob)
-{
-#ifdef HAVE_BALOO
- const KFileItem item = kjob->property("item").value<KFileItem>();
+ Baloo::File file(item.localPath());
+ file.load();
const KBalooRolesProvider& rolesProvider = KBalooRolesProvider::instance();
QHash<QByteArray, QVariant> data;
data.insert(role, QVariant());
}
- Baloo::FileFetchJob* job = static_cast<Baloo::FileFetchJob*>(kjob);
- QHashIterator<QByteArray, QVariant> it(rolesProvider.roleValues(job->file(), m_roles));
+ QHashIterator<QByteArray, QVariant> it(rolesProvider.roleValues(file, m_roles));
while (it.hasNext()) {
it.next();
data.insert(it.key(), it.value());
m_model->setData(index, data);
connect(m_model, &KFileItemModel::itemsChanged,
this, &KFileItemModelRolesUpdater::slotItemsChanged);
+#else
+#ifndef Q_CC_MSVC
+ Q_UNUSED(itemUrl);
+#endif
#endif
}
void resolveRecentlyChangedItems();
void applyChangedBalooRoles(const QString& file);
- void applyChangedBalooRolesJobFinished(KJob* job);
void slotDirectoryContentsCountReceived(const QString& path, int count);
#include <Baloo/File>
#include <KFileMetaData/PropertyInfo>
+#include <KFileMetaData/UserMetaData>
#include <QTime>
#include <QMap>
}
}
+ KFileMetaData::UserMetaData md(file.path());
if (roles.contains("tags")) {
- values.insert("tags", tagsFromValues(file.tags()));
+ values.insert("tags", tagsFromValues(md.tags()));
}
if (roles.contains("rating")) {
- values.insert("rating", QString::number(file.rating()));
+ values.insert("rating", QString::number(md.rating()));
}
if (roles.contains("comment")) {
- values.insert("comment", file.userComment());
+ values.insert("comment", md.userComment());
}
return values;
}
if (m_fromHereButton->isChecked()) {
- query.addCustomOption("includeFolder", m_searchPath.toLocalFile());
+ query.setIncludeFolder(m_searchPath.toLocalFile());
}
return query.toSearchUrl(i18nc("@title UDS_DISPLAY_NAME for a KIO directory listing. %1 is the query the user entered.",
// while we adjust the search text and the facet widget.
blockSignals(true);
- const QVariantMap customOptions = query.customOptions();
- if (customOptions.contains("includeFolder")) {
- setSearchPath(customOptions.value("includeFolder").toString());
+ const QString customDir = query.includeFolder();
+ if (!customDir.isEmpty()) {
+ setSearchPath(customDir);
} else {
setSearchPath(QDir::homePath());
}