1. Added security hardening compiler flags in debian/rules including
stack protection and RELRO
2. Removed redundant linker flag from dtkgui.cmake that was already set
in debian/rules
3. Consolidated security-related build flags in debian/rules for better
maintainability
4. The changes improve binary security against common exploits while
maintaining compatibility
fix: 增强构建安全加固
1. 在debian/rules中添加了安全加固编译标志,包括栈保护和RELRO
2. 从dtkgui.cmake中移除了已在debian/rules中设置的冗余链接器标志
3. 将安全相关的构建标志整合到debian/rules中以提高可维护性
4. 这些改动提高了二进制文件对常见漏洞攻击的防护能力,同时保持兼容性
1. Changed version parameter from required to optional in GitHub
workflow
2. Fixed spec file formatting by aligning Version and Release fields
3. Added %{?dist} macro to Release field for proper RPM building
The changes make the release workflow more flexible by allowing version-
less releases while maintaining proper RPM spec file formatting and
distribution tagging. This helps with automated release processes and
ensures consistent package building across different distributions.
fix: 在发布工作流中使版本参数可选
1. 将 GitHub 工作流中的版本参数从必填改为可选
2. 修复 spec 文件格式,对齐 Version 和 Release 字段
3. 在 Release 字段添加 %{?dist} 宏以支持正确的 RPM 构建
这些变更使发布工作流更加灵活,允许无版本号的发布,同时保持 RPM spec 文件
的正确格式和分发标签。这有助于自动化发布流程并确保在不同发行版上一致的软
件包构建。
Use VERSION file to manage DTK version. VERSION file defines package
version. It also decides the initial value of cached variable
DTK_VERSION which controls the project version in cmake build system.
VERSION file is not synchronized to DTK6, as DTK6 has its own VERSION
file. One can still pass version to DTK_VERSION when running cmake
configure. This is helpful for developers.
Signed-off-by: Yixue Wang <wangyixue@deepin.org>
1. Fixed incorrect bitwise AND operation in OrgDeepinDTKPreference class
2. Changed `fetchAndAndOrdered(1 << (index - 0))` to
`fetchAndAndOrdered(~(1 << (index - 0)))`
3. This ensures proper bit clearing operation when updating property
status flags
4. The original code would incorrectly set bits instead of clearing them
fix: 修复偏好设置处理中的位操作错误
1. 修正了 OrgDeepinDTKPreference 类中错误的位与操作
2. 将 `fetchAndAndOrdered(1 << (index - 0))` 改为
`fetchAndAndOrdered(~(1 << (index - 0)))`
3. 确保在更新属性状态标志时正确的位清除操作
4. 原代码会错误地设置位而不是清除它们
Added a condition to check DontSaveApplicationTheme attribute before
saving theme type to config
This prevents unwanted theme persistence when the application explicitly
requests not to save theme preferences
The change maintains backward compatibility while respecting the
application's preference flag
fix: 当设置DontSaveApplicationTheme时阻止主题保存
在将主题类型保存到配置前添加了检查DontSaveApplicationTheme属性的条件
这可以防止当应用程序明确要求不保存主题偏好时进行不必要的主题持久化
该改动在尊重应用程序偏好标志的同时保持了向后兼容性
Changed Q_GLOBAL_STATIC to Q_GLOBAL_STATIC_WITH_ARGS for
OrgDeepinDTKPreference initialization
This modification provides better type safety and clearer syntax for the
complex initialization parameters
The change maintains the same functionality while following Qt's
recommended practices for static initialization
refactor: 更新 DConfig 初始化语法
将 Q_GLOBAL_STATIC 改为 Q_GLOBAL_STATIC_WITH_ARGS 用于
OrgDeepinDTKPreference 初始化
此修改为复杂的初始化参数提供了更好的类型安全性和更清晰的语法
该变更保持了相同的功能,同时遵循 Qt 推荐的静态初始化实践
QGuiApplication::paletteChanged is deprecated in qt6,
Delay to emit themeTypeChanged signal, palette doesn't refresh
after sending ThemeChangeEvent.
pms: BUG-303929
It's exist when using DPlatformHandle by stack variable.
We save window decoration state in DTreeLandPlatformWindowHelper, and refresh them when surface created.
pms: BUG-278281
qobject_cast<QWindow*>(window) is returned nullptr if window is destroyed in qt6, and we can see it on tst_QWindow::qobject_castOnDestruction() in tst_qwindow.cpp.
Object's address may be the same as before in qt6, memory may be optimized.
pms: BUG-299239
Refact DPlatformHandle to update window settings.
Remove task dequeue in treeland interface when Personalization is inactive.
Add DTreeLandPlatformWindowHelper to manage windowContext.
pms: TASK-368399
ghostVtable will be released whenever Window is destroyed by
delete or deleteLater function, we don't need to resetVtable,
and we shouldn't resetVtable when destructing m_window.
pms: BUG-368399