/***************************************************************************
* Copyright (C) 2012 by Peter Penz <peter.penz19@gmail.com> *
+ * Copyright (C) 2018 by Elvis Angelaccio <elvis.angelaccio@kde.org> *
* *
* Based on KFilePlacesItem from kdelibs: *
* Copyright (C) 2007 Kevin Ottens <ervin@kde.org> *
m_disc(),
m_mtp(),
m_signalHandler(nullptr),
- m_trashDirLister(nullptr),
m_bookmark()
{
m_signalHandler = new PlacesItemSignalHandler(this);
PlacesItem::~PlacesItem()
{
delete m_signalHandler;
- delete m_trashDirLister;
}
void PlacesItem::setUrl(const QUrl &url)
// setting an equal URL results in an itemsChanged()
// signal.
if (dataValue("url").toUrl() != url) {
- delete m_trashDirLister;
if (url.scheme() == QLatin1String("trash")) {
QObject::connect(&Trash::instance(), &Trash::emptinessChanged, m_signalHandler.data(), &PlacesItemSignalHandler::onTrashEmptinessChanged);
}
return dataValue("udi").toString();
}
+void PlacesItem::setApplicationName(const QString &applicationName)
+{
+ setDataValue("applicationName", applicationName);
+}
+
+QString PlacesItem::applicationName() const
+{
+ return dataValue("applicationName").toString();
+}
+
void PlacesItem::setHidden(bool hidden)
{
setDataValue("isHidden", hidden);
const QVariant& current,
const QVariant& previous)
{
- Q_UNUSED(current);
- Q_UNUSED(previous);
+ Q_UNUSED(current)
+ Q_UNUSED(previous)
if (!m_bookmark.isNull()) {
updateBookmarkForRole(role);
void PlacesItem::onDataChanged(const QHash<QByteArray, QVariant>& current,
const QHash<QByteArray, QVariant>& previous)
{
- Q_UNUSED(previous);
+ Q_UNUSED(previous)
if (!m_bookmark.isNull()) {
QHashIterator<QByteArray, QVariant> it(current);
m_bookmark.setUrl(url());
} else if (role == "udi") {
m_bookmark.setMetaDataItem(QStringLiteral("UDI"), udi());
+ } else if (role == "applicationName") {
+ m_bookmark.setMetaDataItem(QStringLiteral("OnlyInApp"), applicationName());
} else if (role == "isSystemItem") {
m_bookmark.setMetaDataItem(QStringLiteral("isSystemItem"), isSystemItem() ? QStringLiteral("true") : QStringLiteral("false"));
} else if (role == "isHidden") {