|
|
|
@ -19,9 +19,15 @@
|
|
|
|
|
|
|
|
|
|
#include "processhelper.h"
|
|
|
|
|
#include <QDesktopServices>
|
|
|
|
|
#include <QDBusInterface>
|
|
|
|
|
#include <QApplication>
|
|
|
|
|
#include <QProcess>
|
|
|
|
|
#include <QUrl>
|
|
|
|
|
|
|
|
|
|
#include <QDBusMessage>
|
|
|
|
|
#include <QDBusConnection>
|
|
|
|
|
#include <QDBusPendingReply>
|
|
|
|
|
|
|
|
|
|
ProcessHelper *SELF = nullptr;
|
|
|
|
|
|
|
|
|
|
ProcessHelper *ProcessHelper::self()
|
|
|
|
@ -52,3 +58,19 @@ bool ProcessHelper::openUrl(const QString &url)
|
|
|
|
|
|
|
|
|
|
return QDesktopServices::openUrl(_url);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
bool ProcessHelper::openFileManager(const QString &url)
|
|
|
|
|
{
|
|
|
|
|
QDBusInterface iface(QStringLiteral("org.freedesktop.FileManager1"),
|
|
|
|
|
QStringLiteral("/org/freedesktop/FileManager1"),
|
|
|
|
|
QStringLiteral("org.freedesktop.FileManager1"));
|
|
|
|
|
|
|
|
|
|
if (iface.lastError().isValid())
|
|
|
|
|
return false;
|
|
|
|
|
|
|
|
|
|
iface.call("ShowFolders",
|
|
|
|
|
QStringList() << QUrl::fromLocalFile(url).toString(),
|
|
|
|
|
QString::number(QApplication::applicationPid()));
|
|
|
|
|
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|