Commit Graph

55 Commits

Author SHA1 Message Date
dc96c21c7d feat: emit signal when AutoStart Changed
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-09-08 08:53:46 +00:00
ac71f99bc6 fix: Compatible with previous DEEPIN_WINE_SCALE handling
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-09-07 17:17:59 +08:00
55e3aa2fae feat: add property 'NoDisplay'
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-09-07 13:04:24 +08:00
2c1f35b820 fix: remove filed codes '%f'
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-09-07 10:41:00 +08:00
1776fa95d5 fix: interfaceRemoved isn't be emit after application uninstall
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-09-07 10:41:00 +08:00
6561747c7d refact: Compatible with Qt 6.2
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-09-06 17:01:06 +08:00
cc4c928dc1 feat: connect to system bus signal for monitor application changed
for dpkg

Signed-off-by: ComixHe <heyuming@deepin.org>
2023-09-06 16:26:38 +08:00
7fa60d9b3d fix: application filter error
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-09-06 16:26:38 +08:00
8d033daf6b fix: Manual removal of symbolic links leads to state error
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-09-06 13:57:18 +08:00
4d6e399653 refact: method UpdateApplicationInfo change to ReloadApplications
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-09-06 13:57:18 +08:00
ebe218b70e fix: AM crashed when Launch failed
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-09-06 10:59:58 +08:00
897db2c85a feat: filter some application which shouldn't be shown
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-09-06 10:59:58 +08:00
4ff60db556 refact: improve scanAutoStart
improve scanAutoStart
2023-09-05 11:48:14 +08:00
acba7b727e feat: support AutoStart
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-09-05 11:48:14 +08:00
30a03974f3 refact: refactor ApplicationService::Launch method
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-09-04 16:33:43 +08:00
68996388b1 fix: AM crashed when call update method but application can't found
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-09-04 16:33:43 +08:00
70c7b92e0e refact: return dbus error when application service's method failed
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-09-04 16:33:43 +08:00
94f7b3c01d fix: correct property check logic
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-09-01 17:15:40 +08:00
ca24d2d908 feat: add method SendToDesktop/RemoveFromDesktop, Property isOnDesktop
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-09-01 17:15:40 +08:00
4c9d4491df refact: remove unnecessary open operation
fix AM can't access some dirs due to
systemd 254's sandboxing option: PrivateUser
is true by default.

Signed-off-by: ComixHe <heyuming@deepin.org>
2023-09-01 15:58:16 +08:00
d1bdab899d feat: add property installedTime,X-flatpak,X-linglong
Signed-off-by: black-desk <me@black-desk.cn>
2023-08-31 16:55:35 +08:00
c99a1b5d6a fix: correct action key
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-31 16:55:35 +08:00
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
8ab6adc290 feat: add categories for application service
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-30 16:08:59 +08:00
64454bd149 refact!: change property IconName to Icons
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-29 13:34:27 +08:00
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
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
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
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
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
ce2148e5cd fix: incorrect behavior when parse and launch
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-25 18:23:21 +08:00
3988e0c526 refact: improve desktop parsing 2023-08-25 18:23:21 +08:00
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
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
06ee5e5899 refact: DesktopFile's method and structure
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-22 11:42:13 +08:00
920594d6e5 refact: ApplicationService ctor and some member functions
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-22 11:42:13 +08:00
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
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
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
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
de09f3dbc2 refact: add test-coverage.sh and some docs
Signed-off-by: ComixHe <heyuming@deepin.org>
2023-08-16 17:54:42 +08:00
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
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
5183716873 refact: apply review suggestions
Signed-off-by: black-desk <me@black-desk.cn>
2023-08-14 13:39:05 +08:00
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
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
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
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
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
857db2625a style: format code 2023-07-21 14:50:57 +08:00