73 Commits

Author SHA1 Message Date
tsic404
9de057e2cc refactor: add taskmanager from dde-application-manager
1. taskmanager used to identify which entry should map to window
  in x11 environmrnt, listen to xevent in anohter thread, and handle those event
when window create, destory, changed. use some way to identify which entry(desktopfile)
should mapped to changed window.
  in wayland, connected plsamawindow signal(window created destoried.
2. use taskmanager instead of dbus in old dock code

log: as title
2023-07-18 07:35:19 +00:00
tsic404
eb33819302 refactor: rewrite encapsulation of the dconfig
log: as title
2023-07-18 07:35:19 +00:00
heyuming
102cd25748 fix: incorrect dbus xml parameter
Log: 修复不正确的dbus xml参数
2023-03-22 10:13:44 +08:00
dengbo
67c66658ee
fix: 任务栏窗口预览功能失效 (#774)
任务栏预览窗口的接口使用错误

Log: 修复任务栏窗口预览功能失效的问题
Bug: https://github.com/linuxdeepin/developer-center/issues/3779
Influence: 任务栏应用窗口预览
2023-02-20 17:40:07 +08:00
donghualin
bc840d233d feat: 加载基本插件
加载pluginmanager插件,其他的插件由pluginmanager插件来加载

Log:
Influence: 插件加载
Task: https://pms.uniontech.com/task-view-222353.html
Change-Id: Ibe3cb59c5e3da27d7547d9bea8e05ebcd03c5a87
2023-01-12 13:51:25 +08:00
donghualin
72a7265487 chore: 适配最新的dtkcore
最新的dtkcore中已经包含frame/qtdbusextended目录下的所有文件,删除原来的同名文件,同时修改引用的头文件的名称

Log:
Influence: 正常编译
Task: https://pms.uniontech.com/task-view-224841.html
Change-Id: I53c6ece52dad59874ca560fa63fbd1c456c6adb3
2022-12-21 11:05:58 +08:00
范朋程
2d958dd670 chore: V23接口改造适配
V23接口改造适配

Log: V23接口改造适配
Influence: 无
Task: https://pms.uniontech.com/task-view-207483.html
Change-Id: Ide530c023ea41f86fad2e8001ec67f1afaa897ab
2022-12-06 14:40:35 +08:00
donghualin
b698b07dde fix: 修改插件接口
1、icon接口中增加主题参数默认值
2、删除以前的不带主题的icon接口
3、PluginStatus改为PluginMode
4、插件接口类中增加eventHandler虚函数

Log:
Influence: 无
Task: https://pms.uniontech.com/task-view-222025.html
Change-Id: I03c8ec09b96faf12f5ab15c8223da8dacae3e4ff
2022-12-02 15:59:35 +08:00
donghualin
a41df224f6 fix: 增加对控制中心设置不同主题下图标的接口
1、任务栏插件接口中增加根据主题来获取不同图标的接口
2、声音、蓝牙、电源、虚拟键盘、回收站等插件完善控制中心的接口
3、任务栏图标的显示根据不同的主题来获取

Log: 完善对控制中心设置不同主题的接口
Influence: 在控制中心切换主题,观察图标是否发生变化
Bug: https://pms.uniontech.com/bug-view-172365.html
Change-Id: Ia02193c9ebcf10559195c6fb8fe6227f581e165b
2022-11-23 16:08:34 +08:00
donghualin
e6a73fe3c3 feat: 增加返回给控制中心设置插件和托盘应用的接口
增加plugins接口,用于给控制中心提供在任务栏上显示的插件或托盘区域,提供setItemOnDock接口,用于在控制中心设置哪些项在任务栏上面显示

Log: 给控制中心提供任务栏插件和托盘显示的接口
Influence: 无
Task: https://pms.uniontech.com/task-view-216841.html
Change-Id: Id6abde586915e5827188156222804914a9edf7c9
2022-11-18 03:29:14 +00:00
donghualin
cf376ebb3f style: 消除编译警告信息
将代码中的过期的不建议使用的函数或类替换成建议使用的函数或类

Log: 消除编译警告
Influence: 无
Task: https://pms.uniontech.com/task-view-96831.html
Change-Id: Ie42a3eed97013adb047105bcf75e07ff8e0277a0
2022-11-04 06:29:16 +00:00
donghualin
91d5bfbf07 fix: 修复任务栏没有加载显示桌面和多任务视图的问题
1、修改DBUS接口中获取当前已加载插件的接口
2、重新定义插件类型:快捷区域插件Quick, 工具插件(回收站等)Tool,托盘插件(U盘图标)Tray,系统插件(开机关机图标)System,固定区域插件(显示桌面和多任务视图)Fixed
3、加载固定区域插件(显示桌面和多任务视图)

Log:
Influence: 任务栏查看是否存在显示桌面和多任务栏视图的插件
Task: https://pms.uniontech.com/task-view-112073.html
Change-Id: Ia7ee8f94ae89ebc93b239f1d078c44e37b50b8ac
2022-11-02 06:35:30 +00:00
donghualin
9e2e8fb18d feat: 高效模式增加加载插件的功能
删除原来的tray插件,高效模式下,加载插件使用时尚模式相同的加载插件的方式

Log: 增加高效模式加载插件的功能
Influence: 高效模式下加载插件
Task: https://pms.uniontech.com/task-view-112073.html
Change-Id: I5766382fb64bd544b3c7a9c40d1ce4668613d508
2022-11-01 16:08:21 +08:00
donghualin
c7826edd46 fix: 删除任务栏对libdframeworkdbus-dev库的依赖
1、删除项目中对libdframeworkdbus-dev库的依赖,通过使用xml2cpp的工具来自动生成dbus接口文件,在使用到dbus库的项目中包含生成文件的目录
2、修改相关服务中v20的接口(com.deepin...)为v23的接口(org.deepin...)

Log:
Influence: 打开控制中心,鼠标移动唤醒任务栏、加载插件等,观察相关功能是否正常
Task: https://pms.uniontech.com/task-view-182009.html
Change-Id: I960c849d06ed271ebbb9f8e479d9879967523581
2022-09-19 11:41:31 +00:00
donghualin
1691e7188c fix: 任务栏代码结构优化解耦
原来的TrayManagerWindow的类是放到MainPanelWindow类里面作为它的一部分,导致窗管在显示的时候有很多问题
修改方案:
1、将左右侧区域拆分成两个窗体,让它们继承自相同的基类MainWindowBase。
2、左右区域公共的部分,例如圆角、展示区域、动画获取等,都在基类中实现或者通过接口返回
3、增加WindowManager类,管理所有的界面,WindowManager类无需知道具体子类的指针,只需要根据相应的接口来获取即可
4、所有的界面类在main.cpp中创建,调用WindowManager对象设置
5、拆分MultiScreenWorker类,使MultiScreenWorker类只关心任务栏相关的逻辑,无需关心窗体或界面

Log: 优化任务栏的显示问题
Influence: 打开任务栏,观察时尚模式下圆角,左右侧区域中间是否连接在一起等
Bug: https://pms.uniontech.com/bug-view-137267.html
Bug: https://pms.uniontech.com/bug-view-140029.html
Bug: https://pms.uniontech.com/bug-view-134527.html
Bug: https://pms.uniontech.com/bug-view-146743.html
Bug: https://pms.uniontech.com/bug-view-150293.html
Change-Id: I4266f6f8c983f61258b92834d93cdacd0221d7de
2022-08-25 19:31:44 +00:00
donghualin
56c3019a5c feat: 增加窗口多开的功能
增加窗口多开的窗口类,用于绘制应用图标和打开窗口的图标,根据实际情况让其显示到正确的位置

Log: 增加窗口多开的功能
Influence: 控制中心开启多开窗口显示,观察应用打开的窗口是否在对应的位置显示
Task: https://pms.uniontech.com/task-view-170977.html
Change-Id: I96371b1304f5373f17dad95893ee656056e5f457
2022-08-18 15:41:57 +00:00
donghualin
90a076a043 feat: 增加适配控制中心设置是否使用最近区域的功能
增加获取是否显示最近使用应用的接口,相应相关的功能

Log:
Influence: 开关是否显示最近使用应用,时尚模式下观察最近使用应用是否显示或隐藏
Bug: https://pms.uniontech.com/bug-view-147717.html
Change-Id: I5de2f978da6f5911a8c873b903095ef9f7bbd14e
2022-08-16 13:19:05 +00:00
songwentao
830e0a7b2f feat: 开启AM宏
开启AM宏定义
清除一个未定义的变量,解决编译报错

Log:
Influence: 无
Task: https://pms.uniontech.com/task-view-162227.html
Change-Id: I5d94d7d6176a2bac663d5bedf07429fdbbd85279
2022-08-15 16:46:31 +08:00
donghualin
9c1eb32e24 feat: 拖动任务栏图标实现分屏效果
拖动任务栏图标到屏幕中间,如果在左侧,显示左分屏效果,在右侧,显示右分屏效果

Log: 完成任务栏图标分屏效果的功能
Influence: 从任务栏拖动图标到屏幕上方,查看是否有分屏功能
Task: https://pms.uniontech.com/task-view-163465.html
Change-Id: I1a7a33646edb6f55972b8e5fa2c5f39ce026fe8e
2022-08-12 08:13:12 +00:00
donghualin
241dd68d30 feat: 增加任务栏的AM接口
增加任务栏的AM接口的访问模块

Log:
Influence: 任务栏
Task: https://pms.uniontech.com/task-view-133075.html
Change-Id: Ic5570bbae6fa4ff3ecc3d529b49200f7bcb1d63c
2022-06-22 10:06:30 +08:00
donghualin
322623427d feat: 高效模式下加载快捷插件
高效模式下增加读取快捷插件并显示

Log: 高效模式显示快捷插件
Influence: 高效模式显示快捷设置插件
Task: https://pms.uniontech.com/task-view-110311.html
Change-Id: I308e963b4816737b3f596bc9d4b93db06851f447
2022-06-10 16:18:24 +00:00
范朋程
3f073306d1 fix: 插件未增加gsettings配置项的话,默认为启用
除非明确增加了对应配置,并且对应的enable为false,才认为是禁用

Log: 修复部分插件加载后不在控制中心显示的问题
Influence: 三方插件可能安装后不在控制中心中显示
Task: https://pms.uniontech.com/zentao/task-view-95112.html
Change-Id: I80a4492260d9b9488d57448549d527b9dd6fdb01
2021-12-15 15:42:39 +08:00
范朋程
c650d12860 fix: 修复控制中心中调整任务栏高度反应慢的问题
之前是因为任务栏在每次调整后都会计算,导致反应慢
在调整期间屏蔽计算过程,调整结束后再设置相关接口的值

Log:
Bug: https://pms.uniontech.com/zentao/bug-view-101271.html
Influence: 控制中心-个性化-任务栏设置,调整任务栏高度
Change-Id: I611a305727d1916db4ed836253a1ac9966e523a9
2021-11-05 22:52:53 +08:00
范朋程
fe238fbcad fix: 修复个性化插件自测出现的部分问题
修复dbus服务提供的xml数据中getPluginKey未设置返回值的问题
修复打开个性化配置页面,当任务栏位置、状态、模式发生变化时,未及时反映到界面上的问题
优化接口调用,避免同一数据反复触发dbus
按照需求更新页面文案内容

Log:
Task: https://pms.uniontech.com/zentao/task-view-86358.html
Change-Id: I598683dcf74711d6935f3c6c911e300967aa1199
2021-10-14 11:33:08 +08:00
范朋程
8d8eac0262 feat: 更新插件页面UI
按照设计图更新UI

Log:
Task: https://pms.uniontech.com/zentao/task-view-86359.html
Change-Id: I90f16bc2d39bbbc49f245e6ef76ac833e660e6b5
2021-10-12 10:18:08 +08:00
FanPengCheng
b7b3451735 feat: 添加dbus接口提供数据
提供接口,后续做控制中心的任务栏配置插件需要用到

Log:
Task: https://pms.uniontech.com/zentao/task-view-86357.html
Change-Id: I82a3718c9cc0e4ae40095a05d6e2d551a2ec74ca
2021-09-22 16:04:44 +08:00
FanPengCheng
b891a5565e chore: 清理cppcheck警告信息
清理cppcheck警告信息

Log:
Task: https://pms.uniontech.com/zentao/task-view-77871.html
Change-Id: I93e77403b3f3b656be4e7d442b81dcbe227c3150
2021-05-31 20:06:39 +08:00
范朋程
29082f5f01 Merge branch 'maintain/5.2'
Change-Id: Ibf45f76bffd88100a2de4ec13b5da539ea843db6

# Conflicts:
#	debian/control
#	frame/item/components/previewcontainer.cpp
#	translations/dde-dock_az.ts
2021-02-26 09:48:26 +08:00
Zhang Qipeng
625f6ba2b9 feat: 任务栏安全模式通知
当任务栏9分钟内累计崩溃3次进入安全模式后,发出通知,用户点击通知中的退出安全模式,任务栏重新加载插件。

Log: 新增任务栏安全模式通知。
Task: https://pms.uniontech.com/zentao/task-view-58411.html
Change-Id: I06b65ce4fdea29b635ff2af2dda0d0199035f4e8
2021-01-27 13:48:51 +08:00
chenjun
2ef1176873 fix: 添加针对源代码的单元测试,添加触发自动测试代码
因为单元测试需要直接测试源代码,而主程序代码中include的单元使用了相对路径
单元测试的CMakeLists和主程序的CMakeLists路径不同,编译单元测试时会提示找不到文件
因此设置搜索路径,并修改各单元引用头文件的路径。在单元测试的CMakeLists中添加需要依赖

Log: 添加针对源代码的单元测试,添加触发自动测试代码
Change-Id: I0e0bc92c28d6cee42fc52064fc360c58f7c02826
2020-12-22 10:10:20 +08:00
Fanpengcheng
ff93e9e78e feat: 添加接口,用于性能优化测试
添加一个dbus接口,callShow被调用后任务栏才显示,否则任务栏不显示,
这里要求任务栏每次启动时这个接口必须被调用,startdde启动任务栏使用dde=dock -r启动,不影响以前的功能

Log:
Change-Id: I449d24e7f6f164ebdb5861bfc8084ccc8bffef9e
Reviewed-on: http://gerrit.uniontech.com/c/dde-dock/+/7291
Reviewed-by: <mailman@uniontech.com>
Reviewed-by: fanpengcheng <fanpengcheng@uniontech.com>
Tested-by: <mailman@uniontech.com>
2020-10-14 19:38:55 +08:00
zccrs
5be4c59e51 fix: dock position and size is wrong on multiple screens and the screens have different device scale ratio
Change-Id: I751f31cf9174eea62471924771d21517936d45da
2019-03-29 16:13:38 +08:00
listenerri
7de1c08e19 refactor: get sni properties from dbus asynchronouslly
Change-Id: Ie100affe4880a30cfa47c9266ee58ce5e7da282f
2019-02-18 14:58:48 +08:00
listenerri
2bc2f2e831 refactor: make MainWindow to register sni host instead of tray plugin
Change-Id: I8f6b05ed69ced2d937aac8828a1adb3e77e79b07
2019-01-15 19:54:13 +08:00
listenerri
945d58a4b5 refactor: using libdframeworkdbus for dock dbus daemon
Change-Id: I62531c101075ec9b37d3840be97bbba25c9faab4
2019-01-07 14:09:25 +08:00
listenerri
67635df6fd refactor: handle click event of system trays
Change-Id: I31b9ecf03e4b9937fa19a3209f5e64e6219b2327
2018-10-25 16:52:13 +08:00
rekols
6725009933 fix: geometry error.
Change-Id: I2ca89ec21e922298c203a8302044501ffc1ea311
2018-05-15 20:12:22 +08:00
rekols
31a29d95ca dbus error by value
Change-Id: I47ee99342d9f50555a1ac755f9effef838fc57f5
2018-05-11 20:29:44 +08:00
石博文
c0986e1c37 refactor: using new dbus interface for dock entry
Change-Id: I670870c30427e18518cc39d878e4e93b21a3ed28
2018-02-22 11:44:57 +08:00
石博文
133b711d1f update license
Change-Id: I9df92e43b79f7c2b3688b595f80df7b3a7bb7ed2
2018-02-07 11:52:47 +08:00
石博文
d17b1661b1 fix window redius
Change-Id: I0a6492d288830e3331d69ced357677a6f636f8a9
2018-01-02 14:08:10 +08:00
石博文
bceddf78c4 Fix strut area outof primary screen bounds
Change-Id: I86c26d1e8431d1604dcf0154b1ecf37c117cdb25
2017-11-28 14:27:16 +08:00
石博文
84b880384b fix strut error
Change-Id: Id983c0aaf6c8e07329c9dd9b2d66eb46520facff
2017-11-14 15:18:33 +08:00
石博文
acd2180fa8 using platform window to set geometry
Change-Id: I3fcf7c9da69fccf31fa9159969bc8ff3052457b0
2017-11-14 11:07:29 +08:00
Hualet Wang
842e530ec3 fix: positioned at wrong place
Dual monitors scaling in Qt way: no scaling on the screen position.

Change-Id: I7588e4d246d179f65fd3e86c7f20b3c3abaccac5
2017-11-06 20:49:48 +08:00
石博文
ffba5070bb using DRegionMonitor instead XMouseArea
Change-Id: Ie0e6b3bab7666e30f97d67eb5bebc545b79a480f
2017-09-28 16:08:37 +08:00
石博文
71ccbcef83 update license
Change-Id: I90da53ccbbd08d5195469fdfe6ff98fc630d0b34
2017-09-18 14:33:44 +08:00
石博文
58d3b69ce7 Hi_DPI support
Change-Id: If063f16f246b65f4c2ce4eef3e57df5cc0347427
2017-08-30 17:46:23 +08:00
石博文
c252d5052a check wid
Change-Id: I44b10ad9ee9f4c2590f82b88fa1acbcf23e7e835
2017-06-12 20:17:30 +08:00
石博文
4c4e0a0fb0 support preview
Change-Id: I425bb6d6fe98d9b0f8906a5289fe1dafc9121cc7
2017-04-27 14:32:31 +08:00