Commit Graph

303 Commits

Author SHA1 Message Date
black-desk
3932b3637e refact: Process::getStatus
log: as title
2023-05-11 13:05:37 +08:00
black-desk
fd6622c30c refact: Process::readFile
Remove DString::splitVectorChars. Use std::getline and fstream.
2023-05-11 13:05:37 +08:00
deepin-admin-bot
222194eb95 chore: Sync by 2e5e092ba3
sync by github workflow

Log: none
Influence: none
2023-05-10 01:52:24 +00:00
wangyixue
233cc0db3d fix: error handling recognized args
Recognized args should be removed from exec args when there are no
actual contents. instead of being replaced by "".

Log: fix error handling recognized args
2023-04-28 16:09:00 +08:00
Zhang Dingyuan
0ffe1d4b2d
fix: duplicate systemd service
Use Dbus type service, and place it in the app.slice
2023-04-24 17:50:29 +08:00
dengbo
d18daaab59 chore: bump version to 1.0.12
* release dde-application-manager 1.0.12

Log:
2023-04-23 18:20:23 +08:00
black-desk
8be4c11b1c fix: arg[0] should be program exe
QProcess::arguments do not contain arg[0].

Signed-off-by: black-desk <me@black-desk.cn>
2023-04-23 10:14:51 +00:00
dengbo
c043b392c7 fix: 退出没有图标的应用AM崩溃
使用xcb ewmh的相关接口获取应用icon

Log: 修复没有图标的应用退出时AM奔溃退出的问题
Influence: 任务栏应用图标正常显示
2023-04-23 17:55:31 +08:00
black-desk
dc617910fb
fix GIO_LAUNCHED_DESKTOP_FILE_PID (#30)
* fix: set GIO_LAUNCHED_DESKTOP_FILE_PID

To set GIO_LAUNCHED_DESKTOP_FILE_PID, we have to manually fork and
exec, as QT determined the environ use to execvp, before running
childModifyer.

After use bare fork and exec, we have to wait for dead child processes.
Otherwise there will be zombies.

Signed-off-by: black-desk <me@black-desk.cn>

* fix: X-Deepin-CreatedBy is key not value

-

Signed-off-by: black-desk <me@black-desk.cn>

---------

Signed-off-by: black-desk <me@black-desk.cn>
2023-04-22 17:29:10 +08:00
zccrs
63d9f4ed57
fix: set DEEPIN_WINE_SCALE on launch an application (#36)
Supported HiDPI for the deepin wine applications. We must give an env
variant to apply the window scale effect to it.
2023-04-22 15:37:00 +08:00
Yutao Meng
b0383d43da fix: 任务栏最近使用任务区域残留锯齿图标应用
部分修复了两种场景:
- 无法点击图标打开的锯齿应用在系统启动时残留在最近任务栏(如Deepin-Lock)
- 锯齿图标应用被关闭后,残留在最近任务栏.(如dde-dconfig-editor)

当前存在问题:
第二种情况在锯齿应用被移除时,任务栏会闪一下.

Issue: https://github.com/linuxdeepin/developer-center/issues/3788
Log: 任务栏最近使用任务区域残留锯齿图标应用
2023-04-22 12:02:40 +08:00
zsien
2031f59203 chore: don't initialize the default applications
Moved to linuxdeepin/default-settings#30
2023-04-21 16:41:49 +08:00
zccrs
aa2edda67a
fix: don't use bamf on wayland session (#31)
The bamfdaemon is needs X server, it's crash on XWayland.
2023-04-20 18:03:24 +08:00
York Lee
94aa8b835e fix: 修改了process.start函数参数的问题
修改了将参数以字符串拼接形式传入process.start中的问题,避免了命令注入。

Log: 修改了process.start函数参数的问题
2023-04-18 03:26:41 +00:00
black-desk
e68eba8c1f chore: bump version to 1.0.11
-
2023-04-17 13:31:08 +00:00
black-desk
cf09c97e46 chore: log envs in launch
-
2023-04-17 10:09:14 +00:00
black-desk
1969ce63d1 fix: set GIO_LAUNCHED_DESKTOP_FILE when launch app
-
2023-04-17 10:09:14 +00:00
black-desk
58c5f4feb8 fix: use identifyWindowByPidEnv for linglong apps
-
2023-04-17 10:09:14 +00:00
black-desk
5f9beaa1c2 refact: use lambda in identifyWindowByPidEnv
-
2023-04-17 10:09:14 +00:00
black-desk
4e43ef0cdb refact: return early in identifyWindowByPidEnv
-
2023-04-17 10:09:14 +00:00
black-desk
010d0c40f6 fix: force windowidentify method order
-
2023-04-17 10:09:14 +00:00
black-desk
29e7ef2f00 fix: use XResQueryClientIds to get pid of xwindow
Code copy from https://gitlab.gnome.org/GNOME/metacity/-/merge_requests/13/diffs

The xprop `_NET_WM_PID` is set by the client side, even if the process
in running in some container. But when pid_ns is unshared, the processes
in side a container, will not be able to get the "right" pid of itself.

The "new" XResQueryClientIds added to XRes will fix this issue by
produce the pid in server side.

refs:

- https://gitlab.freedesktop.org/xorg/xserver/-/issues/1022#note_497597
- https://www.x.org/releases/X11R7.7/doc/resourceproto/resproto.txt

close linuxdeepin/developer-center#3802
2023-04-17 10:09:14 +00:00
chenhuixing
9b82262a4e fix: desktop file still in Desktop after uninstall
AM will emit a signal which named UninstallSuccess when we
click launcher to uninstall the app of linglong. Then launcher
request item data after listen this signal and it will call AM
to refresh the data map. This make AM think the desktop item has
been removed when the fs notify event arrive, which cause AM
won't remove the desktop file.
So we just do removeDesktop() before emit the signal.

Log:
2023-04-12 17:16:30 +08:00
chenhuixing
9bd2a121b0 fix: icon in launcher after uninstall linglong app
AM used try to get the real path when the desktop file is a symbolic
link and save the path to a map, but it use the path
where symbolic link locate to check this desktop file is in that map or not.

This mistake make removeDesktop() not to be executed
when handling the event DFChanged.

This "get realpath" behavior is useless, we have test these two cases:

There is a symlink in /usr/share/applications/xxx.desktop pointer to /tmp/xxx.desktop

1. we remove the symlink;
2. we remove the real desktop file.
whether we change the code or not, AM behavior in the same way:

1. it make launcher remove the item;
2. it cannot make launcher remove the item.
case 2 is a bug. but we do not change that behavior in this commit.

Log:
2023-04-12 17:16:30 +08:00
zsien
729d7db75f chore: bump version to 1.0.10
* introduce new DesktopFile class
* correct Exec parsin
* fix unable to open multiple files
2023-04-12 15:01:45 +08:00
dengbo
81fc93f71f fix: 应用无法打开选中的多个文件
此处不应该将多个文件的路径拼接成一个异常(不存在)的路径,
而应该将多个文件的路径分开传入

Log: 修复应用无法打开选中的多个文件的问题
Influence: 应用打开多个文件
2023-04-10 18:00:20 +08:00
Chen Linxuan
b912390107 fix(StartManager): correct Exec parsing
-

Signed-off-by: black-desk <me@black-desk.cn>
2023-04-03 01:42:34 +00:00
Chen Linxuan
b1f63d72b5 fix(StartManager): use wordexp to parse Exec
-

Signed-off-by: black-desk <me@black-desk.cn>
2023-04-03 01:42:34 +00:00
Chen Linxuan
2d936ac7ae Revert "fix: 修复从桌面和启动器无法打开浏览器(玲珑)的问题"
This reverts commit 56b222dc97.

Signed-off-by: black-desk <me@black-desk.cn>
2023-04-03 01:42:34 +00:00
Chen Linxuan
accc9c2aac fix: introduce new DesktopFile class
KeyFile::saveToFile not guaranteed section order, which is not the right
behavior of desktop file. XDG requires the first section of desktop file
always to be "Desktop Entry".

So I write a new DesktopFile class, which override the saveToFile method
of KeyFile, to make it work.

close linuxdeepin/developer-center#3807

Signed-off-by: black-desk <me@black-desk.cn>
2023-04-03 01:42:34 +00:00
zsien
abf322377e chore: bump version to 1.0.9
* fix get a longer name then it actually is
* fix abnormal icon display in the dock
* set fullscreen launcher by default
* fix default application resets after relogin
* fix crash when get windowicon
* fix app proxy invalid
* fix invalid appid
2023-03-29 20:27:52 +08:00
zsien
a9363f5a7c chore: update the transifex config file
update the transifex config file
2023-03-29 13:48:40 +08:00
YeShanShan
86442d813f fix: Crashed when get windowicon
Add a check when `buf` is nullptr to avoid exit.
  TODO: I don't know why.
2023-03-28 18:31:34 +08:00
YeShanShan
0e6489a502 fix: Invalid appid
desktop's file `baseName` is not equal to `appid`, we use
getId for appid.
2023-03-28 09:59:46 +08:00
YeShanShan
af8d6d18f9 fix: App proxy invalid
AddProxyProc for launched app by launcher.

Issue: https://github.com/linuxdeepin/developer-center/issues/3791
2023-03-28 09:59:46 +08:00
tsic404
dcb310c0e2 chore(CI): add OBS workflows
add OBS workflows

log:
2023-03-24 19:50:36 +08:00
dengbo
d1c121667a fix: 任务栏应用图标显示异常
对于某些没有提供desktop文件(或者desktop文件中没有指定Icon字段)的应用
需要从窗管获取应用的Icon

Log: 修复任务栏应用图标显示异常的问题
Resolve: https://github.com/linuxdeepin/developer-center/issues/3811
Influence: 任务栏应用图片显示
2023-03-21 09:45:45 +08:00
tsic404
de36918beb fix: fix get a longer name then it actually is
fix https://github.com/linuxdeepin/developer-center/issues/3763
xcb_ewmh_get_wm_name return full string is longer than wm name,
get the same str as the wm name

log:
2023-03-03 21:31:24 +08:00
tsic404
80cf2501fa chore: rename project to dde-application-manager
rename project to dde-application-manager

log:
2023-02-23 21:57:34 +08:00
tsic404
d36a325b06 chore(CI): fix reuse
remove multi SPDX info

log:
2023-02-23 21:57:13 +08:00
zsien
71f5ed71c2 feat: set fullscreen launcher by default
启动器默认全屏显示

Log: 启动器默认全屏显示
2023-02-15 11:14:03 +08:00
zsien
fa763545fa Revert "feat: 社区差异化需求实现"
This reverts commit f1ac5f9f00.

Fixes linuxdeepin/developer-center#3617

Log: 修复 launcher 无法记住全屏状态
2023-02-15 11:11:11 +08:00
dengbo
0c2aaae1b0 fix: 注销系统后默认程序设置失效
如果用户有通过控制中心修改默认程序,每次重新登录系统使用之前用户设置的默认程序
而不是从配置文件中重新加载

Log: 修复注销系统后默认程序设置失效的问题
Bug: https://github.com/linuxdeepin/developer-center/issues/3591
Influence: 控制中心默认程序设置
2023-02-15 10:33:59 +08:00
dengbo
b29eef2f2c
Merge pull request #4 from justforlxz/master
chore: add dep5
2023-02-15 10:27:46 +08:00
Zhang Dingyuan
7598fa08a0
chore: update readme files
add README.zh_CN.md
2023-02-15 10:00:47 +08:00
justforlxz
e67767b48e
chore: add dep5
use reuse
2023-02-15 09:59:00 +08:00
donghualin
8cf5d61469 fix: 修复任务栏位置发生变化后消息不跟随的问题
任务栏位置发生变化的信号中增加参数,方便osd正确识别到该信号来改变提示消息的位置

Log: 修复任务栏位置发生变化后消息不跟随的问题
Influence: 多屏幕下,任务栏跟随鼠标,任务栏在主副屏幕切换的时候,观察消息是否跟随任务栏位置显示
Bug: https://pms.uniontech.com/bug-view-184231.html
Change-Id: I7bfcc134daf6d0c61d435e870da9e098043e5ba8
2023-02-14 10:44:22 +08:00
lvpeilong
3104c23e9a chore: update changelog
update changelog

Log: update changelog
Influence: null
Task: https://pms.uniontech.com/task-view-239643.html
Change-Id: I264a8a0bdf7947d41875fc69e6a0d2faa1990d28
2023-02-14 10:44:22 +08:00
zhaoyingzhen
5c3b0f9cf6 fix: 解决任务栏显示lock和dock最近应用的问题。
am没有过滤lock和dock应用导致的问题。

Log:
Bug: https://pms.uniontech.com/bug-view-183657.html
Influence: 无。
Change-Id: I5e85a073fbf928a62f8c0a999e2d0652c3946d2b
2023-02-14 10:44:22 +08:00
zhaoyingzhen
606afcf5fb chore: 更新changelog
更新版本号为:1.0.7

Log:
Task: https://pms.uniontech.com/task-view-227573.html
Influence: 版本号
Change-Id: I8052777e61126ff7f6be2f7d94ce0a84ac96fff7
2023-02-14 10:44:22 +08:00