feat: 增加LaunchAppWithOptions和RunCommand接口
无 Log: 无 Influence: 无 Task: https://pms.uniontech.com/task-view-220801.html Change-Id: I8f6998a95a21dd70093746946b57c6c3be57bf3a
This commit is contained in:
@ -384,7 +384,7 @@ void ApplicationManager::LaunchAppAction(const QString &desktopFile, const QStri
|
||||
}
|
||||
}
|
||||
|
||||
void ApplicationManager::LaunchAppWithOptions(QString desktopFile, uint32_t timestamp, QStringList files, QMap<QString, QString> options)
|
||||
void ApplicationManager::LaunchAppWithOptions(const QString &desktopFile, uint32_t timestamp, const QStringList &files, QVariantMap options)
|
||||
{
|
||||
Q_D(ApplicationManager);
|
||||
if (!d->checkDMsgUid()) {
|
||||
@ -403,6 +403,25 @@ void ApplicationManager::LaunchAppWithOptions(QString desktopFile, uint32_t time
|
||||
}
|
||||
}
|
||||
|
||||
void ApplicationManager::RunCommand(const QString &exe, const QStringList &args)
|
||||
{
|
||||
Q_D(ApplicationManager);
|
||||
if (!d->checkDMsgUid()) {
|
||||
if (calledFromDBus())
|
||||
sendErrorReply(QDBusError::Failed, "The call failed");
|
||||
|
||||
qWarning() << "check msg failed...";
|
||||
return;
|
||||
}
|
||||
|
||||
if (!d->startManager->runCommand(exe, args)) {
|
||||
if (calledFromDBus())
|
||||
sendErrorReply(QDBusError::InvalidArgs, "invalid arguments");
|
||||
|
||||
qWarning() << "invalid arguments";
|
||||
}
|
||||
}
|
||||
|
||||
void ApplicationManager::RunCommandWithOptions(QString exe, QStringList args, QMap<QString, QString> options)
|
||||
{
|
||||
Q_D(ApplicationManager);
|
||||
|
@ -74,6 +74,8 @@ public Q_SLOTS:
|
||||
void Launch(const QString &desktopFile, bool withMsgCheck = true);
|
||||
void LaunchApp(const QString &desktopFile, uint32_t timestamp, const QStringList &files, bool withMsgCheck = true);
|
||||
void LaunchAppAction(const QString &desktopFile, const QString &action, uint32_t timestamp, bool withMsgCheck = true);
|
||||
void LaunchAppWithOptions(const QString &desktopFile, uint32_t timestamp, const QStringList &files, QVariantMap options);
|
||||
void RunCommand(const QString &exe, const QStringList &args);
|
||||
|
||||
protected:
|
||||
ApplicationManager(QObject *parent = nullptr);
|
||||
@ -83,7 +85,6 @@ protected:
|
||||
QList<QDBusObjectPath> list() const;
|
||||
QDBusObjectPath GetInformation(const QString &id);
|
||||
QList<QDBusObjectPath> GetInstances(const QString &id);
|
||||
void LaunchAppWithOptions(QString desktopFile, uint32_t timestamp, QStringList files, QMap<QString, QString> options);
|
||||
void RunCommandWithOptions(QString exe, QStringList args, QMap<QString, QString> options);
|
||||
bool IsProcessExist(uint32_t pid);
|
||||
};
|
||||
|
Reference in New Issue
Block a user