Commit Graph

216 Commits

Author SHA1 Message Date
black-desk
3988e0c526 refact: improve desktop parsing 2023-08-25 18:23:21 +08:00
black-desk
a16754647a refact: introduce hasNonAsciiAndControlCharacters
Make regex thread_local.
2023-08-25 18:23:21 +08:00
black-desk
17536bca3b refact: add some comments to DesktopEntry::parseGroupHeader
1. remove extra - in that regex;
2. add some comments;
3. correct that typo in method name.
2023-08-25 18:23:21 +08:00
black-desk
9f6ab28672 feat: add a warning log for invalid locale 2023-08-25 18:23:21 +08:00
black-desk
58eff3b927 style: remove extra space 2023-08-25 18:23:21 +08:00
ComixHe
ccfb245419 refact: Desktop file parsing process and Application methods to
Properties

Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-25 18:23:21 +08:00
ComixHe
9f2a8b6798 feat: add property "LastLaunchedTime"
1. reactor some utils implementation.
2. remove constexpr before `decltype(auto)` due to GCC bug.
refer: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102229

Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-23 17:46:57 +08:00
ComixHe
2bdb9e99ee refact: optimize regular expression initialization
add profiling test.

Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-22 11:42:13 +08:00
ComixHe
06ee5e5899 refact: DesktopFile's method and structure
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-22 11:42:13 +08:00
black-desk
65b6c9eaf0 fix(launchHelper): set ExitType to cgroup
ExitType defaults to `main`, which means systemd will kill all processes
in the application cgroup when the "main" process exited.

This default behavior make applications like vscode which will always
daemonlize itself killed immediately by systemd, so we should set this
property to `cgroup` instead.

refer to https://www.freedesktop.org/software/systemd/man/systemd.service.html#ExitType=

Signed-off-by: black-desk <me@black-desk.cn>
2023-08-22 11:42:13 +08:00
ComixHe
920594d6e5 refact: ApplicationService ctor and some member functions
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-22 11:42:13 +08:00
ComixHe
0e7d84f61d refact: change dbus api and service impl
1. change IconName and DisplayName to method
2. refactor impl of GetManagedObject and move it to global.h
3. refactor impl of JobService::status
4. add ut_job.cpp

Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-22 11:42:13 +08:00
ComixHe
d49a99d252 feat: add objectManager interface
refact the way to get DBus interface from Qt Meta System

Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-22 11:42:13 +08:00
ComixHe
bb83716d27 feat: change dbus interface api
1. remove method: Application, Launch. (ApplicationManager1)
2. add property: IconName, DisplayName. (Application1)
3. refact the way of construct ApplicationService.
4. if Desktop Entry Key `Hidden` is true, this application wouldn't
   export to DBus.

Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-22 11:42:13 +08:00
ComixHe
a3dd315e33 test: add identify test
fix some bugs found in testing

Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-16 17:54:42 +08:00
ComixHe
de09f3dbc2 refact: add test-coverage.sh and some docs
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-16 17:54:42 +08:00
black-desk
c4c1d72568 refact: hidden escaped app id in dbus object path
Signed-off-by: black-desk <me@black-desk.cn>
2023-08-14 13:39:05 +08:00
black-desk
b0c3475a3d fix: correct getXDGDataDirs
Signed-off-by: black-desk <me@black-desk.cn>
2023-08-14 13:39:05 +08:00
ComixHe
e3bfb1cc7a refact: refact LaunchApp's implementation
Signed-off-by: ComixHe <heyuming@deepin.org>
Signed-off-by: black-desk <me@black-desk.cn>
2023-08-14 13:39:05 +08:00
ComixHe
2fa74e40e5 refact: change implementation of UpdateApplicationInfo
adjust the way of get XDG_DATA_DIRS.

Signed-off-by: ComixHe <heyuming@deepin.org>
Signed-off-by: black-desk <me@black-desk.cn>
2023-08-14 13:39:05 +08:00
black-desk
5183716873 refact: apply review suggestions
Signed-off-by: black-desk <me@black-desk.cn>
2023-08-14 13:39:05 +08:00
black-desk
4394edd8b8 build: remove unnecessary source
Signed-off-by: black-desk <me@black-desk.cn>
2023-08-14 13:39:05 +08:00
ComixHe
bc2bdf559e example: add launch application example
fix some bug while testing the example

Signed-off-by: ComixHe <heyuming@deepin.org>
Signed-off-by: black-desk <me@black-desk.cn>
2023-08-14 13:39:05 +08:00
black-desk
8a74802c84 docs: update TODO
Signed-off-by: black-desk <me@black-desk.cn>
2023-08-14 13:39:05 +08:00
ComixHe
722d0666d3 feat: add impl of updateApplicationInfo
1. change the way to traverse files
2. refact some code

Signed-off-by: ComixHe <heyuming@deepin.org>
Signed-off-by: black-desk <me@black-desk.cn>
2023-08-14 13:39:05 +08:00
ComixHe
799100436c feat: watch systemd unit new and remove to sync state
add default values to XDG_DATA_DIRS if it dosen't set

Signed-off-by: ComixHe <heyuming@deepin.org>
Signed-off-by: black-desk <me@black-desk.cn>
2023-08-14 13:39:05 +08:00
black-desk
4687265e65 refact: restructure project
1. adjust project structure;
2. use config.h to locate app-launch-helper binary.
2023-08-07 16:46:57 +08:00
ComixHe
fe284e78b6 feat: implementation of the major feature of dbus service
Log:
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-07 16:46:57 +08:00
black-desk
839383ecae docs: update TODO
Add some plan date and correct some mistakes.
2023-07-24 16:07:23 +08:00
black-desk
857db2625a style: format code 2023-07-21 14:50:57 +08:00
heyuming
5fed3ed9f0 feat: add test for desktopentry and jobmanager
Log:
2023-07-21 14:50:57 +08:00
heyuming
d288752fb3 feat: finish dbus service: job/jobManager
Log:
2023-07-18 16:37:52 +08:00
heyuming
3a278bec79 feat: adjust dbus service structure
Log:
2023-07-17 16:20:15 +08:00
heyuming
6f598ab52b feat: add desktopentry class
Log:
2023-07-14 12:05:35 +08:00
heyuming
fdf01923db feat: implement job service
Log:
2023-07-12 10:41:41 +08:00
deepin-admin-bot
eac09c2cca chore: Sync by 559e91167d
sync by github workflow

Log: none
Influence: none
2023-07-10 06:12:25 +00:00
heyuming
10add2092c feat: init dbus service structure
Log: 初始化dbus服务结构
2023-07-10 13:59:48 +08:00
heyuming
c10838200b chore: init project structure
Log: 初始化项目结构
2023-07-07 15:44:18 +08:00
black-desk
6c7be17dac chore: update .reuse/dep5
Signed-off-by: black-desk <me@black-desk.cn>
2023-07-06 10:05:34 +08:00
black-desk
49b5445fcc chore: make reuse happy
Signed-off-by: black-desk <me@black-desk.cn>
2023-07-06 10:05:34 +08:00
black-desk
5183912187 docs: update README
Signed-off-by: black-desk <me@black-desk.cn>
2023-07-06 10:05:34 +08:00
black-desk
d05e3fee70 docs: add api/dbus and docs/TODO.md
Signed-off-by: black-desk <me@black-desk.cn>
2023-07-06 10:05:34 +08:00
black-desk
0316297d8a build: update debian/*
Signed-off-by: black-desk <me@black-desk.cn>
2023-07-06 10:05:34 +08:00
black-desk
e7ae0758ed docs: update README
Signed-off-by: black-desk <me@black-desk.cn>
2023-07-06 10:05:34 +08:00
black-desk
235db8ab0c refact: remove almost all files
This is a prepare commit for the following refactor of
dde-application-manager.

I remove almost all files in this git repository.

We will start the refactor in later commits.

Signed-off-by: black-desk <me@black-desk.cn>
2023-07-06 10:05:34 +08:00
hudeng
06b051fda3 chore(CI): Update obs tag build workflow
use obs unstable package directly

log:
2023-05-22 06:32:36 +00:00
tsic404
caf789e185 chore: bump version 1.0.16
log: bump version 1.0.16
2023-05-15 13:31:46 +08:00
black-desk
02a818b12c fix: fix a use-after-free
Signed-off-by: black-desk <me@black-desk.cn>
2023-05-15 05:08:33 +00:00
tsic404
e3fdb67864 chore: bump version 1.0.15
log: bump version 1.0.15
2023-05-12 16:20:49 +08:00
tsic404
d4cb60370e fix: entry->app maybe nullptr, need to judge before use
log: as title
2023-05-12 15:33:55 +08:00