deepin20.9控制中心改造
目录
1. 概述
deepin20.9 不再维护,但是控制中心有一些细节问题还没有修复。
本篇博客记录修复deepin20.9控制中心UI细节问题的过程
2. 实践过程
放开源码源:
$ cat /etc/apt/sources.list
## Generated by deepin-installer
deb https://community-packages.deepin.com/deepin/ apricot main contrib non-free
deb-src https://community-packages.deepin.com/deepin/ apricot main contrib non-free
拉取源代码:
mkdir -p ~/Documents/dde-control-center
cd ~/Documents/dde-control-center
apt source dde-control-center
2.1 修改大圆角为中圆角
圆角在deepin中,是有设计规范的。
deepin圆角设计规范:https://docs.deepin.org/info/开发入门/基础环境/DTK/设计/设计/圆角
窗口的圆角可以在控制中心进行设置,但是有一些在设计规范中的控件,则是代码写死的。
本部分修改控制中心的各部分大圆角部分
2.1.1 主窗口背景框
代码位置:vim ./src/frame/window/mainwindow.cpp
DStyle::setFrameRadius(m_navView, 18);
修改为:
DStyle::setFrameRadius(m_navView, 8);
2.1.2 修改增加时区对话框圆角
代码位置:vim ./src/frame/modules/datetime/timezone_dialog/timezonechooser.cpp
handle.setWindowRadius(18);
修改为:
handle.setWindowRadius(8);
2.1.3 修复【触摸板】背景框长度不一致
代码位置:vim ./src/frame/window/modules/mouse/touchpadsettingwidget.cpp
m_contentLayout->setContentsMargins(ThirdPageContentsMargins);
改为:
m_contentLayout->setContentsMargins(0, 0, 0, 0);
另外:
widget->setContentsMargins(0, 0, 0, 0);
改为:
widget->setContentsMargins(2, 2, 2, 5);
2.1.4 修复【快捷键】增加按钮UI问题,调整与【默认程序】增加按钮一致
代码位置:vim ./src/frame/window/modules/keyboard/shortcutsettingwidget.cpp
vlayout->setContentsMargins(10, 10, 0, 5);
改为:
vlayout->setContentsMargins(10, 10, 10, 0);
2.1.5 修复【系统语言】背景框长度不一致。这个可能在卸载fcitx,安装fcixt5之后的笔记本上有此现象。虚拟机未发现。
代码位置:vim ./src/frame/window/modules/keyboard/systemlanguagewidget.cpp
layout->setContentsMargins(0, 0, 10, 0);
改为:
layout->setContentsMargins(0, 0, 0, 0);
2.1.6 修复【系统语言】增加按钮UI问题。调整与【默认程序】增加按钮一致
代码位置:vim ./src/frame/window/modules/keyboard/systemlanguagewidget.cpp
vlayout->setContentsMargins(10, 10, 10, 5);
改为:
vlayout->setContentsMargins(10, 10, 10, 0);
3. 编译安装
根据README.md
,执行对应的编译安装过程
cd ~/Documents/dde-control-center/dde-control-center-5.5.197
sudo apt -y build-dep .
mkdir build
cd build
cmake ..
make -j12
sudo make install
首次编译可能放在/usr/bin/
目录下,后续编译的可能放在/usr/local/bin
目录下,注意移动目标二进制文件到/usr/bin
下
4. 已知问题
- 网络模块,输入法模块,均是独立的非集成模块。下方的+按钮,偏上,与控制中心的设计不符合
- 通用-启动菜单,无法点击和配置(可能跟修改了控制中心大圆角为中圆角有关)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· 展开说说关于C#中ORM框架的用法!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?