ComixHe
c99a1b5d6a
fix: correct action key
...
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-31 16:55:35 +08:00
ComixHe
1fb4539792
feat: add env option and refactor command generate method
...
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-31 15:54:40 +08:00
ComixHe
8ab6adc290
feat: add categories for application service
...
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-30 16:08:59 +08:00
ComixHe
0896f845a6
chore: Avoiding binary conflicts with existing AM
...
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-30 15:02:29 +08:00
black-desk
3df26e4fc2
build: DDE_DEBUG_MODE->USE_DEBUG_DBUS_NAME
...
Signed-off-by: black-desk <me@black-desk.cn>
2023-08-30 15:02:29 +08:00
ComixHe
c85f3d0950
chore: add service file
...
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-30 15:02:29 +08:00
black-desk
a26dc53cbb
chore: update gitignore
...
ignore debian package outputs.
Signed-off-by: black-desk <me@black-desk.cn>
2023-08-30 15:02:29 +08:00
black-desk
04c076b6d9
fix: register QDBusObjectPath in ut
...
qt 6.4 will failed to connect to signal if we do not register this type.
Signed-off-by: black-desk <me@black-desk.cn>
2023-08-30 15:02:29 +08:00
ComixHe
16ebd64789
build: remove asan when running ut
...
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-30 15:02:29 +08:00
ComixHe
caa976b7af
build: add debian build
...
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-30 15:02:29 +08:00
ComixHe
f2d5b7b307
refact: remove static env instance
...
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-30 15:02:29 +08:00
ComixHe
d00cd17f2e
refact: change DEBUG_MODE
to DDE_DEBUG_MODE
...
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-29 15:20:25 +08:00
ComixHe
64454bd149
refact!: change property IconName
to Icons
...
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-29 13:34:27 +08:00
ComixHe
26a0b67157
feat: filter service and scope by subState and app
prefix
...
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-29 13:07:44 +08:00
black-desk
b0dd943e1d
fix: adjust processUnitName
...
`<2` should be fine to make later two takeLast work fine and avoid crash.
It seems that `<3` will
make kde scope (without launcher in unit name) not working.
2023-08-29 10:19:32 +08:00
black-desk
6adc02375f
feat: scan existing systemd unit
...
We should scan existing systemd unit when we start application manager.
As application manager crash and restarted later,
we can get the launched application instances back.
2023-08-29 10:07:26 +08:00
black-desk
02317993c8
fix: call "Subscribe" before connect to systemd
...
systemd will only send UnitNew/UnitRemoved after Subscribe called.
2023-08-29 10:07:26 +08:00
ComixHe
8a662314f2
fix: core dumped under Qt 6.4
...
call method metaObject of QMetaType will coredump under Qt 6.4
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-29 10:07:26 +08:00
black-desk
25a7acb6fd
Revert "fix: core dumped under Qt 6.4"
...
Github bug makes me commit wrong content, revert it.
This reverts commit 6fae5a758b
.
2023-08-29 10:06:57 +08:00
ComixHe
6fae5a758b
fix: core dumped under Qt 6.4
...
1. call method metaObject of QMetaType will coredump under Qt 6.4
2. remove `std::terminate()` when AM can't connect to Systemd Signals.
3. call `Subscribe` before connecting to Systemd Signals to guarantee that
systemd will send UnitNew and UnitRemoved.
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-29 09:58:02 +08:00
ComixHe
ce2148e5cd
fix: incorrect behavior when parse and launch
...
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-25 18:23:21 +08:00
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