[App Sharing] 适配 V23 Release 的任务栏系统监控插件 Resolved
Tofloor
poster avatar
忘记、过去
deepin
2024-07-29 18:42
Author

适配 V23 Release 的任务栏系统监控插件

距离上次插件适配 deepin V23 居然快满 1 年了?时间真的过得好快啊.jpg

上周推送的内测更新,据说完成度已经接近于 V23 Release 了,如果没有啥大问题的话,正式版也快来了。干脆趁此空档赶紧重新适配一波~

P.S. 旧版本传送门:[应用分享] 支持 V23 的任务栏系统监控插件

附件下载

dde-dock-monitor-plugin_2.0.1_amd64.zip

P.S. 附件中提供的软件包在 deepin 20.9 环境中编译打包,也可在 20.9 环境中正常使用。

P.S. 解压后,仅需双击安装 dde-dock-monitor-plugin_2.0.1_amd64.deb 文件即可。
安装后需 注销重新登录重启 后才能加载插件(或者终端中执行 systemctl --user restart dde-shell@DDE.service)。
可在 控制中心->个性化->桌面->插件区域 控制该插件显示或隐藏。

代码仓库

P.S. 大佬也在论坛里 @q77190858

效果预览

截图_选择区域_20240729174233.png

截图_选择区域_20240729174341.png

截图_选择区域_20240729174535.png

截图_选择区域_20240729174614.png

Q&A

  1. Q: 为啥设置界面里下拉框点击后没反应?

    A: 目前新版本任务栏托盘区域还有 BUG,右键菜单中二级菜单还无法正常显示,估计是同一类问题。耐心等大佬修复即可。

    临时解决方案:单击下拉框后,再次点击下拉框,可以看到焦点退出效果(此时鼠标放在页面内其他按钮上是有悬浮效果的)。此时可以通过键盘上下方向键调整下拉框选项,正常保存即可。

  2. Q: 为什么设置界面和关于界面显示这么奇怪?

    A: 新版本任务栏托盘区域实现方式发生变化,暂时无法像以前一样直接显示独立窗口。

题外话

纵观任务栏插件接口,经历了数次变动:

  1. V23 Beta 的新任务栏加入了 2.0.0 的 API,但是几乎废除了旧版本中对自定义控件的支持,右侧快捷插件只能显示图标和文字
  2. UOS 1070 发布,看上去也支持了 API 2.0,但是和 V23 代码实现不同,无法通用
  3. V23 RC 开始,dde-shell 取代了 dde-dock,由于主体使用了 Qt6,所有插件都需要基于 Qt6 重新编译才能加载

再到这次 V23 正式版内测,由于重新实现了托盘插件,dde-tray-loader 可以说和 dde-shell 解耦了,终于算是把上述变动带来的兼容性问题彻底(?)解决了:

  1. API 严格分为了 1.0 和 2.0,且 2.0 接口基于 1.0 扩展,仅新增了部分接口
  2. dde-tray-loader 主体使用了 Qt5 编译,插件也不需要 Qt6 了
  3. 控制中心的插件图标,从固定目录中读取和插件名称同名图片进行显示,不再需要插件内部 icon 接口返回(插件就不一定需要 2.0 的 API 了)

简单来说,甚至可以认为,现在可以把以前在 deepin V20.9 上编译的插件直接拿来用,问题也不大。对于插件作者维护难度降低了很多,也算是天大的好消息了,终于摆脱了之前 V23 几个大版本每次都要重新适配的现状 sob


不过也有些小问题(比如上述下拉框和对话框的显示效果),dde-tray-loader 在加载插件时,部分接口并没有完全实现:比较重要的 PluginProxyInterface 中,曾用于保存插件设置项的接口 setValue / getValue / removeValue 就没有实际动作,会导致插件的配置无法保存,只能自行保存至其他位置。

本次适配中,新增了一层兼容层单独实现了这 3 个接口,读写配置的位置与行为与 V20 保持一致,可以最大限度地保证兼容性。(当然还是建议用其他方式保存配置哈~万一那天 V20 的配置项就彻底被砍了也说不定......)

P.S. dde-dock 最早的实现中,所有插件的配置项均保存在 com.deepin.dde.dockgsettings 选项 plugin-settings 中,解析比较麻烦,也不好管理;加之 V23 开始应该是要逐步用 DConfig 替换 GSettings,这种破坏也算是情有可原吧......

结语

希望 V23 正式发布后,以前大佬们写的各种插件还能继续发光发热 joy

Reply Favorite View the author
All Replies
2 / 2
To page
慕书
deepin
2025-06-30 09:56
#21

有计划支持v25吗?

Reply View the author
忘记、过去
deepin
2025-06-30 17:43
#22
慕书

有计划支持v25吗?

V25 商店里上架了,直接下载安装就行
V23 / V20 的版本得去 GitHub 上自己下载 deb 安装

截图_deepin-home-appstore-client_20250630174237.png

Reply View the author
慕书
deepin
2025-07-14 13:17
#23
忘记、过去

V25 商店里上架了,直接下载安装就行
V23 / V20 的版本得去 GitHub 上自己下载 deb 安装

截图_deepin-home-appstore-client_20250630174237.png

感谢您的付出,非常好用

Reply View the author
2 / 2
To page