style: format code
This commit is contained in:
@ -9,14 +9,20 @@ ApplicationManager1Service::~ApplicationManager1Service() = default;
|
|||||||
|
|
||||||
ApplicationManager1Service::ApplicationManager1Service() = default;
|
ApplicationManager1Service::ApplicationManager1Service() = default;
|
||||||
|
|
||||||
QList<QDBusObjectPath> ApplicationManager1Service::list() const { return m_applicationList.keys(); }
|
QList<QDBusObjectPath> ApplicationManager1Service::list() const
|
||||||
|
{
|
||||||
|
return m_applicationList.keys();
|
||||||
|
}
|
||||||
|
|
||||||
bool ApplicationManager1Service::removeOneApplication(const QDBusObjectPath &application)
|
bool ApplicationManager1Service::removeOneApplication(const QDBusObjectPath &application)
|
||||||
{
|
{
|
||||||
return m_applicationList.remove(application) != 0;
|
return m_applicationList.remove(application) != 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void ApplicationManager1Service::removeAllApplication() { m_applicationList.clear(); }
|
void ApplicationManager1Service::removeAllApplication()
|
||||||
|
{
|
||||||
|
m_applicationList.clear();
|
||||||
|
}
|
||||||
|
|
||||||
QDBusObjectPath ApplicationManager1Service::Application(const QString &id)
|
QDBusObjectPath ApplicationManager1Service::Application(const QString &id)
|
||||||
{
|
{
|
||||||
|
@ -25,9 +25,7 @@ public:
|
|||||||
|
|
||||||
Q_PROPERTY(QList<QDBusObjectPath> List READ list)
|
Q_PROPERTY(QList<QDBusObjectPath> List READ list)
|
||||||
QList<QDBusObjectPath> list() const;
|
QList<QDBusObjectPath> list() const;
|
||||||
void addApplication(const QString &ID,
|
void addApplication(const QString &ID, const QStringList &actions, bool AutoStart = false);
|
||||||
const QStringList &actions,
|
|
||||||
bool AutoStart = false);
|
|
||||||
bool removeOneApplication(const QDBusObjectPath &application);
|
bool removeOneApplication(const QDBusObjectPath &application);
|
||||||
void removeAllApplication();
|
void removeAllApplication();
|
||||||
|
|
||||||
|
@ -35,22 +35,52 @@ QDBusObjectPath ApplicationService::Launch(const QString &action, const QStringL
|
|||||||
return {};
|
return {};
|
||||||
}
|
}
|
||||||
|
|
||||||
QStringList ApplicationService::actions() const noexcept { return m_actions; }
|
QStringList ApplicationService::actions() const noexcept
|
||||||
|
{
|
||||||
|
return m_actions;
|
||||||
|
}
|
||||||
|
|
||||||
QStringList& ApplicationService::actionsRef() noexcept { return m_actions; }
|
QStringList &ApplicationService::actionsRef() noexcept
|
||||||
|
{
|
||||||
|
return m_actions;
|
||||||
|
}
|
||||||
|
|
||||||
QString ApplicationService::iD() const noexcept { return m_ID; }
|
QString ApplicationService::iD() const noexcept
|
||||||
|
{
|
||||||
|
return m_ID;
|
||||||
|
}
|
||||||
|
|
||||||
IconMap ApplicationService::icons() const { return m_Icons; }
|
IconMap ApplicationService::icons() const
|
||||||
|
{
|
||||||
|
return m_Icons;
|
||||||
|
}
|
||||||
|
|
||||||
IconMap& ApplicationService::iconsRef() { return m_Icons; }
|
IconMap &ApplicationService::iconsRef()
|
||||||
|
{
|
||||||
|
return m_Icons;
|
||||||
|
}
|
||||||
|
|
||||||
bool ApplicationService::isAutoStart() const noexcept { return m_AutoStart; }
|
bool ApplicationService::isAutoStart() const noexcept
|
||||||
|
{
|
||||||
|
return m_AutoStart;
|
||||||
|
}
|
||||||
|
|
||||||
void ApplicationService::setAutoStart(bool autostart) noexcept { m_AutoStart = autostart; }
|
void ApplicationService::setAutoStart(bool autostart) noexcept
|
||||||
|
{
|
||||||
|
m_AutoStart = autostart;
|
||||||
|
}
|
||||||
|
|
||||||
QList<QDBusObjectPath> ApplicationService::instances() const noexcept { return m_Instances.keys(); }
|
QList<QDBusObjectPath> ApplicationService::instances() const noexcept
|
||||||
|
{
|
||||||
|
return m_Instances.keys();
|
||||||
|
}
|
||||||
|
|
||||||
bool ApplicationService::removeOneInstance(const QDBusObjectPath &instance) { return m_Instances.remove(instance) != 0; }
|
bool ApplicationService::removeOneInstance(const QDBusObjectPath &instance)
|
||||||
|
{
|
||||||
|
return m_Instances.remove(instance) != 0;
|
||||||
|
}
|
||||||
|
|
||||||
void ApplicationService::removeAllInstance() { m_Instances.clear();}
|
void ApplicationService::removeAllInstance()
|
||||||
|
{
|
||||||
|
m_Instances.clear();
|
||||||
|
}
|
||||||
|
@ -5,12 +5,19 @@
|
|||||||
#include "instanceservice.h"
|
#include "instanceservice.h"
|
||||||
|
|
||||||
InstanceService::InstanceService(QString application, QString systemdUnitPath)
|
InstanceService::InstanceService(QString application, QString systemdUnitPath)
|
||||||
: m_Application(std::move(application)), m_SystemdUnitPath(std::move(systemdUnitPath))
|
: m_Application(std::move(application))
|
||||||
|
, m_SystemdUnitPath(std::move(systemdUnitPath))
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
InstanceService::~InstanceService() = default;
|
InstanceService::~InstanceService() = default;
|
||||||
|
|
||||||
QDBusObjectPath InstanceService::application() const { return m_Application; }
|
QDBusObjectPath InstanceService::application() const
|
||||||
|
{
|
||||||
|
return m_Application;
|
||||||
|
}
|
||||||
|
|
||||||
QDBusObjectPath InstanceService::systemdUnitPath() const { return m_SystemdUnitPath; }
|
QDBusObjectPath InstanceService::systemdUnitPath() const
|
||||||
|
{
|
||||||
|
return m_SystemdUnitPath;
|
||||||
|
}
|
||||||
|
@ -34,8 +34,12 @@ public:
|
|||||||
static_assert(std::is_invocable_v<F, QVariant>, "param type must be QVariant.");
|
static_assert(std::is_invocable_v<F, QVariant>, "param type must be QVariant.");
|
||||||
|
|
||||||
QString objectPath{DDEApplicationManager1JobObjectPath + QUuid::createUuid().toString(QUuid::Id128)};
|
QString objectPath{DDEApplicationManager1JobObjectPath + QUuid::createUuid().toString(QUuid::Id128)};
|
||||||
auto future = QtConcurrent::mappedReduced(
|
auto future = QtConcurrent::mappedReduced(args.begin(),
|
||||||
args.begin(), args.end(), func,qOverload<QVariantList::parameter_type>(&QVariantList::append), QVariantList{}, QtConcurrent::ReduceOption::OrderedReduce);
|
args.end(),
|
||||||
|
func,
|
||||||
|
qOverload<QVariantList::parameter_type>(&QVariantList::append),
|
||||||
|
QVariantList{},
|
||||||
|
QtConcurrent::ReduceOption::OrderedReduce);
|
||||||
QSharedPointer<JobService> job{new JobService{future}};
|
QSharedPointer<JobService> job{new JobService{future}};
|
||||||
auto path = QDBusObjectPath{objectPath};
|
auto path = QDBusObjectPath{objectPath};
|
||||||
{
|
{
|
||||||
|
@ -93,7 +93,8 @@ std::optional<DesktopFile> DesktopFile::searchDesktopFile(const QString &desktop
|
|||||||
qDebug() << "Current Application Dirs:" << XDGDataDirs;
|
qDebug() << "Current Application Dirs:" << XDGDataDirs;
|
||||||
for (const auto &d : XDGDataDirs) {
|
for (const auto &d : XDGDataDirs) {
|
||||||
auto dirPath = QDir::cleanPath(d);
|
auto dirPath = QDir::cleanPath(d);
|
||||||
QDirIterator it{dirPath,{desktopFile},QDir::AllEntries | QDir::NoSymLinks | QDir::NoDotAndDotDot, QDirIterator::Subdirectories};
|
QDirIterator it{
|
||||||
|
dirPath, {desktopFile}, QDir::AllEntries | QDir::NoSymLinks | QDir::NoDotAndDotDot, QDirIterator::Subdirectories};
|
||||||
if (it.hasNext()) {
|
if (it.hasNext()) {
|
||||||
path = it.next();
|
path = it.next();
|
||||||
break;
|
break;
|
||||||
@ -209,8 +210,7 @@ QString DesktopEntry::Value::toString(bool &ok) const noexcept
|
|||||||
auto unescapedStr = unescape(*str);
|
auto unescapedStr = unescape(*str);
|
||||||
constexpr auto controlChars = "\\p{Cc}";
|
constexpr auto controlChars = "\\p{Cc}";
|
||||||
constexpr auto asciiChars = "[^\x00-\x7f]";
|
constexpr auto asciiChars = "[^\x00-\x7f]";
|
||||||
if (unescapedStr.contains(QRegularExpression{controlChars}) and
|
if (unescapedStr.contains(QRegularExpression{controlChars}) and unescapedStr.contains(QRegularExpression{asciiChars}))
|
||||||
unescapedStr.contains(QRegularExpression{asciiChars}))
|
|
||||||
return {};
|
return {};
|
||||||
|
|
||||||
ok = true;
|
ok = true;
|
||||||
|
@ -11,15 +11,7 @@
|
|||||||
|
|
||||||
constexpr static auto defaultKeyStr = "default";
|
constexpr static auto defaultKeyStr = "default";
|
||||||
|
|
||||||
enum class ParseError {
|
enum class ParseError { NoError, NotFound, MismatchedFile, InvalidLocation, OpenFailed, GroupHeaderInvalid, EntryKeyInvalid };
|
||||||
NoError,
|
|
||||||
NotFound,
|
|
||||||
MismatchedFile,
|
|
||||||
InvalidLocation,
|
|
||||||
OpenFailed,
|
|
||||||
GroupHeaderInvalid,
|
|
||||||
EntryKeyInvalid
|
|
||||||
};
|
|
||||||
|
|
||||||
class DesktopEntry
|
class DesktopEntry
|
||||||
{
|
{
|
||||||
@ -65,7 +57,11 @@ struct DesktopFile
|
|||||||
static std::optional<DesktopFile> searchDesktopFile(const QString &desktopFilePath, ParseError &err) noexcept;
|
static std::optional<DesktopFile> searchDesktopFile(const QString &desktopFilePath, ParseError &err) noexcept;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
DesktopFile(QString &&path,QString &&fileId):m_filePath(std::move(path)),m_desktopId(std::move(fileId)){}
|
DesktopFile(QString &&path, QString &&fileId)
|
||||||
|
: m_filePath(std::move(path))
|
||||||
|
, m_desktopId(std::move(fileId))
|
||||||
|
{
|
||||||
|
}
|
||||||
QString m_filePath;
|
QString m_filePath;
|
||||||
QString m_desktopId;
|
QString m_desktopId;
|
||||||
};
|
};
|
||||||
|
@ -25,12 +25,10 @@ public:
|
|||||||
}
|
}
|
||||||
m_file.reset(new DesktopFile{std::move(file).value()});
|
m_file.reset(new DesktopFile{std::move(file).value()});
|
||||||
}
|
}
|
||||||
void SetUp() override
|
void SetUp() override {}
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
void TearDown() override {}
|
void TearDown() override {}
|
||||||
QSharedPointer<DesktopFile> file() { return m_file; }
|
QSharedPointer<DesktopFile> file() { return m_file; }
|
||||||
|
|
||||||
private:
|
private:
|
||||||
static inline QSharedPointer<DesktopFile> m_file;
|
static inline QSharedPointer<DesktopFile> m_file;
|
||||||
};
|
};
|
||||||
@ -49,7 +47,8 @@ TEST_F(TestDesktopEntry, desktopFile)
|
|||||||
TEST_F(TestDesktopEntry, prase)
|
TEST_F(TestDesktopEntry, prase)
|
||||||
{
|
{
|
||||||
const auto &exampleFile = file();
|
const auto &exampleFile = file();
|
||||||
ASSERT_FALSE(exampleFile.isNull());;
|
ASSERT_FALSE(exampleFile.isNull());
|
||||||
|
;
|
||||||
DesktopEntry entry;
|
DesktopEntry entry;
|
||||||
QFile in{exampleFile->filePath()};
|
QFile in{exampleFile->filePath()};
|
||||||
ASSERT_TRUE(in.open(QFile::ExistingOnly | QFile::ReadOnly | QFile::Text));
|
ASSERT_TRUE(in.open(QFile::ExistingOnly | QFile::ReadOnly | QFile::Text));
|
||||||
|
@ -10,6 +10,7 @@ class TestJobManager : public testing::Test
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
JobManager1Service &service() { return m_jobManager; }
|
JobManager1Service &service() { return m_jobManager; }
|
||||||
|
|
||||||
private:
|
private:
|
||||||
JobManager1Service m_jobManager;
|
JobManager1Service m_jobManager;
|
||||||
};
|
};
|
||||||
@ -33,9 +34,12 @@ TEST_F(TestJobManager, addJob)
|
|||||||
qDebug() << "job was really removed";
|
qDebug() << "job was really removed";
|
||||||
});
|
});
|
||||||
|
|
||||||
manager.addJob(sourcePath, [](auto value) -> QVariant {
|
manager.addJob(
|
||||||
|
sourcePath,
|
||||||
|
[](auto value) -> QVariant {
|
||||||
EXPECT_TRUE(value.toString() == "Application");
|
EXPECT_TRUE(value.toString() == "Application");
|
||||||
return QVariant::fromValue(true);
|
return QVariant::fromValue(true);
|
||||||
}, args);
|
},
|
||||||
|
args);
|
||||||
QThread::sleep(1); // force wait
|
QThread::sleep(1); // force wait
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user