97 Commits

Author SHA1 Message Date
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
0a35f5b5e0 fix: 修改时尚模式下分割应用区域和插件区域的方式
原来调用的是dtk的setMaskPath方法,现换成Qt的setMask方法,实现更彻底

Log:
Influence: 任务栏-时尚模式下查看左右区域的显示
Bug: https://pms.uniontech.com/bug-view-134527.html
Change-Id: Ibd5e7db440ae359a59c73e77f5f08951f8571e7a
2022-06-20 13:41:10 +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
donghualin
461ece4bd7 fix: 修复任务栏在特效模式下的UI
1、在特效模式下,固定区域、应用区域和托盘区域的分割线是不可见的,因此在绘制颜色的时候判断其是否可见
2、调整关机按钮同时显示文字的最小高度
3、特效模式下任务栏中间扣出来的部分透明

Log:
Influence: 任务栏-特效模式,查看左侧的线条是否可见
Bug: https://pms.uniontech.com/bug-view-134527.html
Bug: https://pms.uniontech.com/bug-view-134489.html
Change-Id: I4ee89702fb409293b8652d6aa71c50a2dd18a7ee
2022-06-01 18:07:35 +08:00
donghualin
2ee4b0c25d perf: 格式化代码并对部分类解偶
删除AppSnapshot类中对com.deepin.dde.daemon.Dock接口的调用,并通过DBus的方式来调用相关的接口

Log:
Influence: 任务栏
Task: https://pms.uniontech.com/zentao/task-view-95700.html
Change-Id: Ie8e48111ee9094813b002a0809cd6ba53aae9586
2022-01-05 14:00:26 +08:00
范朋程
4b0166f59b chore: 清除编译警告
清除编译警告和cppcheck检查出的警告信息

Log:
Influence: 无
Task: https://pms.uniontech.com/zentao/task-view-96546.html
Change-Id: I8b32b02c9d3a284029a39826516ab7b41132f236
2022-01-05 09:21:48 +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
范朋程
f8984e9c61 feat: 适配wayland
适配wayland

Log: 适配wayland
Influence: wayland适配
Change-Id: I61ec8f82aa2f7e92e81e3f669d6b8019bffb4e75
2021-11-05 22:39:14 +08:00
范朋程
0d1f12dc1b test: wayland环境下dde-dock测试
dde-dock代码里存在X相关的硬编码。
为了在wayland环境下能够显示dde-dock且不影响其基本功能,故先将相关代码屏蔽。

Log: 适配dde-dock在wayland环境下显示
Influence: wayland适配
Change-Id: I9d579841b1e371f2ccea81351ffdfdc8eddfc070
2021-11-05 22:39:14 +08:00
范朋程
565ef80494 feat: 新增控制中心个性化插件
Merge remote-tracking branch 'origin/dev/11261'

Log: 新增控制中心个性化插件
Influence: 控制中心-个性化菜单下面的任务栏设置子菜单,任务栏右键菜单
Change-Id: If768e8a442e9a3b418e9da44207534f4ba28413a
2021-10-19 09:24:54 +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
FanPengCheng
14d1f5d52a chore: 整理代码
删除用不到的内容

Log:
Task: https://pms.uniontech.com/zentao/task-view-86488.html
Change-Id: I5eb0b09cef1d504640cc676d2059cd2dfacaafaa
2021-09-28 17:42:50 +08:00
FanPengCheng
816f0edc87 test: 添加单元测试代码
添加单元测试代码

Log:
Change-Id: I243bcf2e5f1057eb909e68a2c77f86ba3f9f9f7e
2021-08-26 12:43:17 +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
yanghongwei
4277b4a852 chore: 添加注释
添加部分注释,方便代码阅读

Log: 添加部分注释
Change-Id: I7cdb5bc80aa8bbd94ae0601fbae7760e55b6b119
2021-05-14 17:18:42 +08:00
Fan PengCheng
8ad3d835ed fix: 修复藏语环境下字体显示不全的问题
藏语字体环境下,计算得到字体高度会出现,换用QFontMetrics的boundingRect函数获取其高度即可

Log: 修复藏语环境下字体显示不全的问题
Bug: https://pms.uniontech.com/zentao/bug-view-79014.html
Bug: https://pms.uniontech.com/zentao/bug-view-78763.html
Change-Id: I6388b74b1d2930c98d3b4dfb5db496505234c954
2021-05-12 17:33:19 +08:00
Fan PengCheng
81fd4a245a chore: 删除一些用不到的函数
部分函数没有必要保留,做删除处理,尽量降低类之间的耦合性

Log:
Change-Id: I6de2788f1571049c0f2f327cbd4875887ff71564
2021-04-16 16:59:27 +08:00
Fan PengCheng
1e3d90f62b refactor: 去除对后端Display服务的依赖
后端服务数据变化有快有慢,可能导致任务栏不正确时间进行响应,从而导致显示异常,对应的单元测试代码已添加

Log: 重构显示逻辑,保障任务栏显示正常
Change-Id: I62f06c133945a625c2c2ec2b2e21809be27543b6
2021-04-12 16:53:09 +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
lxz
8d50c302a0
Revert "fix: show slow"
This reverts commit 710aba548904adf01ef0bdb4ad819f62e5761239.

Change-Id: If82c0dea1ad95c6f47628d15a3d54f61cf8c3234
2020-10-28 15:32:45 +08:00
Fanpengcheng
6c9c162f11 Revert "fix: show slow"
This reverts commit 710aba548904adf01ef0bdb4ad819f62e5761239.
2020-10-27 13:48:58 +08:00
Zhang, DingYuan
710aba5489 fix: show slow
By extending the time of returning to the dbus call to occupy more cpu, solve the excessive time caused by insufficient resources.

Task: https://pms.uniontech.com/zentao/task-view-40521.html
Log:
Change-Id: I469c8f846d8de7fb1a7501800f8e041aff3fab1e
Reviewed-on: http://gerrit.uniontech.com/c/dde-dock/+/8088
Reviewed-by: <mailman@uniontech.com>
Reviewed-by: fanpengcheng <fanpengcheng@uniontech.com>
Tested-by: <mailman@uniontech.com>
2020-10-21 09:21:31 +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
Liu Xing
3aa4ab50ca fix: mips平台剪切板、通知中心不跟随任务栏
mips平台resizeEvent缺失导致任务栏没有及时发送geometry变化信号,导致剪切板、任务栏没有及时更新位置

Log: 解决mips平台剪切板、通知中心不跟随 任务栏问题
Bug: https://pms.uniontech.com/zentao/bug-view-48969.html
Change-Id: If091ed21ad70346526de0f5a5bbeec07e36726c7
Reviewed-on: http://gerrit.uniontech.com/c/dde-dock/+/6349
Reviewed-by: <mailman@uniontech.com>
Reviewed-by: fanpengcheng <fanpengcheng@uniontech.com>
Tested-by: <mailman@uniontech.com>
2020-09-27 14:41:42 +08:00
范朋程
883c74f479 fix: 修复一处任务栏显示异常的问题
windowSizeFashion和windowSizeEfficient给出的值始终对应前端认为的界面高度或宽度.举例:当前缩放为2时,任务栏为高效模式,windowSizeEfficient对应值为50,那么任务栏显示的高度应该为50*2个像素

Log: 修复一处任务栏显示异常的问题
Task: https://pms.uniontech.com/zentao/task-view-36233.html
Change-Id: I1986ca9d1b0d6fad67186c9bad210a54f153095b
Reviewed-on: http://gerrit.uniontech.com/c/dde-dock/+/3301
Reviewed-by: <mailman@uniontech.com>
Reviewed-by: wangwei <wangwei@uniontech.com>
Reviewed-by: niecheng <niecheng@uniontech.com>
Tested-by: <mailman@uniontech.com>
2020-09-03 13:37:10 +08:00
liuxing
13b23e1dbd feat: 增加触屏功能
根据后端长按一秒信号处理拖拽任务栏高度;根据后端xevent注册区域监控,处理任务栏隐藏,单指滑动唤醒任务栏

Log: 增加任务栏触屏功能
Task: https://pms.uniontech.com/zentao/task-view-33543.html
Change-Id: Ic862cc75a3cf89235702ca4fc2bcb27b28b0b418
Reviewed-on: http://gerrit.uniontech.com/c/dde-dock/+/2240
Reviewed-by: <mailman@uniontech.com>
Reviewed-by: fanpengcheng <fanpengcheng@uniontech.com>
Reviewed-by: wangwei <wangwei@uniontech.com>
Tested-by: <mailman@uniontech.com>
2020-08-31 18:40:33 +08:00
范朋程
c7b23941de feat: 去除没用的代码
去除没用的代码

Log: 去除没用的代码
Change-Id: I7e780b65ed65a47228a98b99cf2b6b1ff7a42a4e
Reviewed-on: http://gerrit.uniontech.com/c/dde-dock/+/2519
Reviewed-by: <mailman@uniontech.com>
Reviewed-by: lizhongming <lizhongming@uniontech.com>
Tested-by: <mailman@uniontech.com>
2020-08-20 18:03:29 +08:00
Fan PengCheng
5bd878755e fix: 解决任务栏高效模式下显示圆角的问题
任务栏大小发生变化时,需要更新一下裁剪区域

Log: 解决任务栏高效模式下显示圆角的问题
Bug: https://pms.uniontech.com/zentao/bug-view-41426.html
Change-Id: I674da074d6deb8a08bd6a06351722731f299783b
Reviewed-on: http://gerrit.uniontech.com/c/dde-dock/+/1466
Reviewed-by: <mailman@uniontech.com>
Reviewed-by: fanpengcheng <fanpengcheng@uniontech.com>
Tested-by: <mailman@uniontech.com>
Tested-by: fanpengcheng <fanpengcheng@uniontech.com>
2020-08-07 23:16:28 +08:00
Fan PengCheng
cfe77faff2 fix: 解决桌面无窗口,切换为智能隐藏模式后任务栏隐藏问题
智能模式下为显示状态时,切换模式,不做隐藏操作

Log: 解决桌面无窗口,切换为智能隐藏模式后任务栏隐藏问题
Bug: https://pms.uniontech.com/zentao/bug-view-41907.html
Change-Id: I29208fc36266cd1f4404c8ac1ad9d5d60b8ebea0
Reviewed-on: http://gerrit.uniontech.com/c/dde-dock/+/1465
Reviewed-by: <mailman@uniontech.com>
Reviewed-by: fanpengcheng <fanpengcheng@uniontech.com>
Tested-by: <mailman@uniontech.com>
Tested-by: fanpengcheng <fanpengcheng@uniontech.com>
2020-08-07 23:15:14 +08:00
Fan PengCheng
6d8f391d75 fix: 修复右下角显示桌面在时尚模式下出现的问题
切换模式时更新一下右下角'显示桌面'的区域

Log: 修复右下角显示桌面在时尚模式下出现的问题
Change-Id: Ibdad4a6c62b21598f11e3d71b5cc12adcaaae5d0
Reviewed-on: http://gerrit.uniontech.com/c/dde-dock/+/1408
Reviewed-by: fanpengcheng <fanpengcheng@uniontech.com>
Tested-by: fanpengcheng <fanpengcheng@uniontech.com>
2020-08-06 22:53:14 +08:00
Fan PengCheng
08c543da63 fix: 修复任务栏切换显示模式时图标显示异常问题
任务栏切换显示模式时,未设置内部内容的大小,内部内容的大小还是另外的显示模式的大小

Log: 修复任务栏切换显示模式时图标显示异常问题
Bug: https://pms.uniontech.com/zentao/bug-view-41663.html
Change-Id: Iac23581127710b43f89ed42c7b293c338b08d55b
Reviewed-on: http://gerrit.uniontech.com/c/dde-dock/+/1401
Reviewed-by: <mailman@uniontech.com>
Reviewed-by: niecheng <niecheng@uniontech.com>
Reviewed-by: fanpengcheng <fanpengcheng@uniontech.com>
Tested-by: <mailman@uniontech.com>
2020-08-06 20:37:12 +08:00
Fan PengCheng
69e9dfa656 fix: 解决任务栏启动后不显示问题
计算显示位置时未考虑缩放因素,重构代码中未考虑这里

Log: 修复开启缩放后,任务栏显示一场问题
Bug: https://pms.uniontech.com/zentao/bug-view-41620.html
Change-Id: I03026852f261c78bb0d2e8a6f650c9b8f3805c16
Reviewed-on: http://gerrit.uniontech.com/c/dde-dock/+/1379
Reviewed-by: <mailman@uniontech.com>
Reviewed-by: niecheng <niecheng@uniontech.com>
Reviewed-by: fanpengcheng <fanpengcheng@uniontech.com>
Tested-by: <mailman@uniontech.com>
2020-08-06 20:35:48 +08:00
Fan PengCheng
dc88a3e14c fix: 重构任务栏的多屏功能代码
重构此部分代码,因时间太长了,rebase会带来较多的冲突,目前手摘取过来

Log: 重构任务栏的多屏功能代码
Change-Id: I23200f7d7d12e05b75909a38c8081fc435d019eb
Reviewed-on: http://gerrit.uniontech.com/c/dde-dock/+/1353
Reviewed-by: <mailman@uniontech.com>
Reviewed-by: lizhongming <lizhongming@uniontech.com>
Tested-by: <mailman@uniontech.com>
2020-08-05 21:52:37 +08:00
xiechuan
5c5f61d5a9 feat: 打开启动器后,任务栏不随鼠标触发
多屏下,鼠标在屏幕间进行切换时,判断任务栏是否打开

Log: 添加多屏下任务栏显示判断
Task: https://pms.uniontech.com/zentao/task-view-30895.html
Change-Id: I60a94663d6ebf7234e188b339b6279700b5b3f36
Reviewed-on: http://gerrit.uniontech.com/c/dde-dock/+/656
Reviewed-by: niecheng <niecheng@uniontech.com>
Reviewed-by: wangwei <wangwei@uniontech.com>
Tested-by: fanpengcheng <fanpengcheng@uniontech.com>
2020-07-27 18:37:37 +08:00
longqi_cm@deepin.com
8e97f166b9 fix: 使用XEventMonitor接口错误
未清空保存的id,导致使用接口时报错

Log: 解决后端日志报错问题
Bug: https://pms.uniontech.com/zentao/bug-view-35358.html
2020-06-28 15:33:36 +08:00
zhaolong
1e4669c549 fix(frame): 无特效时任务栏不能唤起
屏幕分辨率改变后dock大小未设置,另在屏幕边缘处会循环触发

Log: 修复2D模式下,设置任务栏状态为智能隐藏后,移开窗口和鼠标放置任务栏位置均不能唤醒任务栏
Bug: https://pms.uniontech.com/zentao/bug-view-33639.html
2020-06-20 00:19:46 +08:00
zhaolong
18191155f3 fix(frame): 动画在多屏情况下异常
多屏条件下添加了较多功能,而这些功能发生时改变了dock的一些状态,且这些状态有些有相叠的情况,所以删除了一些状态值,也另添了一些状态值来区分不同情况

Log: 修复任务栏在多屏情况下的一些异常
Bug: https://pms.uniontech.com/zentao/bug-view-33736.html
Bug: https://pms.uniontech.com/zentao/bug-view-33718.html
Bug: https://pms.uniontech.com/zentao/bug-view-33693.html
Bug: https://pms.uniontech.com/zentao/bug-view-33639.html
Bug: https://pms.uniontech.com/zentao/bug-view-33636.html
Bug: https://pms.uniontech.com/zentao/bug-view-32919.html
Bug: https://pms.uniontech.com/zentao/bug-view-32830.html
Bug: https://pms.uniontech.com/zentao/bug-view-34173.html
2020-06-19 09:04:41 +08:00
范朋程
ee83bb1cba fix(cppcheck): cppcheck检查
静态代码检查,按照提示修改了所有合理的警告内容,部分内容为cppcheck误报,不处理

Log: 按照静态代码检查工具给出的结果进行修改
2020-06-16 13:54:23 +08:00
zhaolong
44cf2dd47d fix(frame): 动画异常
旧代码动画实现方式是采用延时触发,以设定的300毫秒动画时间为参照,动画相关的功能逻辑均是或先于或晚于该时间执行,当遇到机器运算较慢,或瞬时CPU负荷较重时,程序地执行流程会出现紊乱,而背离预期行为,出现一些特定情况下BUG,且难以分析,复现和调试。现删除所有以特定时间为先后顺序,来控制动画相关功能实现方式,改为以事件结束为依据地触发方式

Log: 修复dock栏位置和显示都出错的问题
Bug: https://pms.uniontech.com/zentao/bug-view-12178.html
Bug: https://pms.uniontech.com/zentao/bug-view-25873.html
Task: https://pms.uniontech.com/zentao/task-view-25153.html
Bug: https://pms.uniontech.com/zentao/bug-view-28993.html
2020-06-13 13:38:13 +08:00
范朋程
ac6a590b37 Merge tag '5.1.0.12' into uos
# Conflicts:
#	frame/util/docksettings.cpp
#	frame/util/docksettings.h
#	frame/window/mainwindow.cpp
2020-06-05 17:17:36 +08:00
范朋程
01d7a23d02 Merge tag '5.1.0.11' into uos
dde 5.0.0.3

# Conflicts:
#	frame/util/docksettings.cpp
#	frame/util/docksettings.h
#	frame/window/mainwindow.cpp
#	gschema/com.deepin.dde.dock.module.gschema.xml
2020-06-05 16:15:42 +08:00
zhaolong
f1ac619557 feat(frame):dock moves with the mouse to the corresponding screen
多屏扩展模式下桌面-任务栏显示,当鼠标贴近屏幕顶部/底部边缘时,移动任务栏显示到当前屏幕task:18770
2020-05-29 15:45:39 +08:00
fpc_diesel
f019e29eee Revert "feat(frame):multi-screen down taskbar location"
This reverts commit 634265aec4cf351c5a112f95e14c445fb68817ab.

# Conflicts:
#	frame/util/docksettings.cpp
2020-05-23 10:14:31 +08:00
zhaolong
634265aec4 feat(frame):multi-screen down taskbar location
多屏扩展模式下桌面任务栏显示,在调整屏幕拼接位置或多屏扩展模式时下dock位置与以相应变化 task:18769 18771

(cherry picked from commit 5eb654e1c7f3349a1be6230a535cedc01b9d0540)

# Conflicts:
#	frame/util/docksettings.h
#	frame/window/mainwindow.cpp
#	frame/window/mainwindow.h
2020-05-13 13:47:40 +08:00
fpc_diesel
632dc55a74 fix:show plugin 2020-05-07 18:29:27 +08:00
chenwei
0b78ed3260 fix:The taskbar shows an exception after logout
注销登录后任务栏显示异常
bug:14759

(cherry picked from commit b12272acb6cb71d2deffe50865df8f564f498a5f)
(cherry picked from commit 59e1353ceeedf4fc604c74f0c1ca6517587393cb)
2020-04-30 09:46:56 +08:00
wangxuwen
5422441836 fixed (dde-dock): dde-dock can not hide really for task 14309 2020-02-12 17:32:46 +08:00
wangxuwen
d8fc8b08f3 fixed(dde-dock): sometimes mouse display is abnormal for bug 12866 2020-01-21 15:17:38 +08:00