Commit Graph

52 Commits

Author SHA1 Message Date
ComixHe 2d7435324c feat: enable xdgIconLoader under Qt6
Signed-off-by: ComixHe <heyuming@deepin.org>
2024-01-09 15:51:56 +08:00
ck 0dfac4ca6e chore: fix ut_dciiconengine failed on dark theme
add normal.dark, hover.dark, pressed.dark
2024-01-04 10:00:30 +08:00
ck df8a05e159 fix: DIconProxyEngine read not ensureEngine
read and write operations not match
Trying to construct an instance of an invalid type, type id:xxx
2024-01-04 10:00:30 +08:00
ck d3d7096c0d fix(build): ut failed on Qt6.4
Fix ut build
2023-08-21 14:15:33 +08:00
ck f08f6ea538 chore: ut build without source
- filedrag destroy server to emit serverDestroyed
- compare color sometime failed, convert to rgb first
- ut build without source(cmake -DEnableCov=ON)
2023-08-16 09:28:17 +08:00
houchengqiu 3f1960067b chore: Adaptation for Qt5.11
Adaptation for Qt5.11

Log: Adaptation for Qt5.11
2023-08-03 11:44:40 +08:00
ck 8f4319308b chore: add unit test
- make tests/test-recoverage.sh runable again
- DDciIconPalette
- DNativeSettings
- add a minimal qpa plugin for test
2023-08-02 16:23:10 +08:00
ck c2b8c1508b chore: do not show ui in ut
use QWidget::createWinId instead of QWidget::show
to create window handle(QWindow)
2023-08-02 16:23:10 +08:00
ck 07b454ccb7 chore: iconengine tweak and uint test
- forward declaration XdgIconLoaderEngine
- xdgiconloader headers position tweak
- XDG colorScheme color support alpha (css color is RGBA not ARGB)
- add ut_XdgIconProxyEngine ut_DIconProxyEngine
2023-07-31 13:29:16 +08:00
ck afb7340011 feat: load app and qt Translation files
- interface: DGuiApplicationHelper::loadTranslator();
- auto load qt_xxx.qm && qtbase_xxx.qm && appName_xxx.qm
- add loadTranslator ut
2023-07-27 11:52:02 +08:00
ck e7834e1763 fix: DFileDragClient::serverDestroyed nerver emit
emit serverDestroyed in ~DFileDragServer()
DDndClientSignalRelay::serverDestroyed emit DFileDragClient::serverDestroyed
add dfiledrag unit test
2023-07-25 08:56:50 +08:00
wangfei 724af5ebf3 chore: add unit test about dciiconengine
add unit test about dciiconengine

Log: add unit test about dciiconengine
2023-07-07 09:54:54 +08:00
ck d867a02cda refactor!: deprecate some interfaces in dtk6
- DGuiApplicationHelper -7
- DPalette -1
- DPlatformTheme -27 properties
2023-07-06 11:24:23 +08:00
wangfei 0d9e457d13 chore: add unit test about builtinengine
add unit test ut_builtinengine about builtinengine

Log: add unit test about builtinengine
2023-07-05 16:12:26 +08:00
ck 62b66a9f05 fix: ut failed
1. dciicon memery leak(ReaderData not delete)
2. DImageHandler memery leak
3. use png instead of svg (no need svg imageiohandler plugin)
2023-06-19 13:13:09 +08:00
ck dcede1f96d chore: Adapt Qt6 && Dtk6 compilation
Since xdgiconloader is not adapted to Qt6, libxdg is disabled by default when compiling Dtk6
Do not install dconfig file in dtkgui to avoid conficts with dtk6gui
C++ 17 by default
DVERSION ==> DTK_VERSION
cmake_minimum_required 3.13
tools install to CMAKE_INSTALL_LIBEXECDIR
2023-06-19 13:13:09 +08:00
ck b683e97cbc fix(build): suport build with Qt6 && Qt5
使用条件编译将选择不同版本 Qt 接口
2023-06-19 13:13:09 +08:00
zccrs d52cc4c111 chore: add a unit test for DDciIconPlayer
Test the non-animation image.
2023-04-26 13:26:13 +08:00
YeShanShan 978be55303 fix: App crashed when `setPaletteType` called early
ASSERT: "The application ID is empty" if `setPaletteType` is
called before QGuiApplication contrusted.
  `q->themeType` will try to use `DConfig`, It's applicationName
is Empty.
2023-04-24 13:58:07 +08:00
ck 2e966e94bf fix: dci icon image scale calculation error
qreal pixmapScale = 48 / 256; // 0
qreal pixmapScale = qreal(48) / 256; // 0.1875

Log: dci image size calculation error
2023-03-10 14:41:18 +08:00
zccrs 66ab7451f2 feat: Support animation for DDciIcon
See also https://github.com/linuxdeepin/deepin-specifications/pull/1,
This implementation complies with the specification by DSG on animation
dci's icons.

New class: DDciIconImage DDciIconImagePlayer DDciIconPlayer
2023-02-14 13:17:17 +08:00
zccrs 7fa65a0792 fix: Don't change color if the HSL values no variation
If all the adjust parameters are 0, do not make any changes for the base
color. Because when trying to adjust the HSL value of an RGB spec color,
it will first convert the RGB spec to the HSL spec, and this conversion
will cause some precision loss, and cause the color has changed when
conversion back to the RGB spec.
2023-02-14 13:17:17 +08:00
renbin e400ddd110 feat: Optional dependencies libfreeimage and libraw.
Change the build dependencies, libfreeimage and libraw are not
required by default, except for debian and linglong builds.
Set DTK_DISABLE_EX_IMAGE_FORMAT=ON to not support extended
image format.

Log: Optinal dependencies libfreeimage and libraw.
Influence: Add build package options
2023-02-02 02:33:30 +00:00
renbin 5ca5df6ccf feat: Support RAW image formats.
1. Dynamically load libraw.so to support RAW image fomats.
2. Improve some implementations, Update unit cases and docs.
3. Move image-handler from folder example to tool.

Log: Support RAW image formats.
Influence: Add build dependency libraw-dev.
2023-02-02 02:33:30 +00:00
wangyixue 34a1fe3f19 chore: change GTest::gtest for compatibility
Change GTest::gtest to GTest::GTest for backward compatibility.

Log: change GTest::gtest to GTest::GTest
2023-01-12 14:00:17 +08:00
wangyixue a69ed2efdc chore: add export target support
Export target Dtk::Gui. Users can simply use target_link_libraries.

Log: add export target support
2022-12-29 09:52:49 +08:00
renbin 9dc1bb90d1 feat: Add image algorithms, ut and comment.
Add image algorithms, unit test cases, dox file comment and example.

Log: Add image algorithms, ut and comment.
2022-12-12 06:16:33 +00:00
ck 934be318be feat: add DIcon
get pixmap of specified devicePixelRatio
Fix https://pms.uniontech.com/bug-view-162771.html

Log: none
Change-Id: I38b16c8402be74d1ef216faf7c77fa096282dadc
2022-11-17 13:54:12 +08:00
chenhongtao 09de488645 fix(coverage): add the option of compiler to generage gcda files
A mistake, the compile option is forgetton

Log: add compiler options to generage gcda files
2022-09-05 09:04:13 +00:00
chenhongtao 9dbff1eb87 fix(shell): fix recoveryshell to cmake
Now the configure file is cmake , then the shell should be cmake too

Log: fix recoveryshell
2022-09-02 08:28:53 +00:00
chenhongtao 750478f24e feat(doc): add package libdtkgui-doc
build the package for doc

Log: build the pacakge of doc for dtkgui
2022-09-02 06:18:11 +00:00
ShootingStarDragons 7f227daf8a feat(tocmake): tocmake
I change the source code from qmake to cmake. Move the files
which will be install to the /usr/include to $root/include, which will
help to mattern match and easylier to do install. and the change will
break the build of qmake

Log: from qmake to cmake

Influence: qmake is breaked
2022-08-17 16:59:12 +08:00
xzl 987b356f46 chore: adapt REUSE license header
修改版权声明

Log: 修改版权声明
2022-08-11 05:01:51 +00:00
ck 71b349d2c7 fix(build): 覆盖旧配方rc文件重复添加
util.pri 中添加过 RESOURCES,去掉重复添加的

Log: none
Influence: none
Change-Id: Ie576f712405dc9309c164324f745567603a74bbc
2022-07-19 10:22:35 +08:00
Chen Bin 503ac5d6b0 chore: fix typo
DPalette中存在错别字接口修复。

Log:
Influence: 使用dtkgui的应用的接口影响
Change-Id: I4622c7c9c40e2aa7f3924f332dbe9f20a0dfd9ac
2022-07-19 10:22:35 +08:00
zccrs b40b8b42a8 feat: Add DIconTheme class
DIconTheme 提供从图标主题中查找 QIcon 的功能,与 QIcon::fromTheme
不同的是,DIconTheme 默认不会通过 Qt platform theme 进行图标加载,
而是直接创建内置图标引擎,或者是 XdgIconLoaderEngine,这样可以保证
在任何桌面环境下使用此接口的程序都能正确的查找到图标,这对 DTK 程序
而言非常重要,因为它们一般都还会依赖 DBuiltinIconEngine 提供的功能。

Log:
Influence: 无
Change-Id: I34ff035ffc7b3cfece780fe2676553638904a00d
2022-07-19 10:22:35 +08:00
AlexOne 55351686f0 chore: 按照要求修改单元测试生成文件名
按照要求修改单元测试生成文件名

Log:
Influence: none
Change-Id: I032d0f01fc9e11238b6e7a81bf08d62eb81074e0
2022-02-21 13:11:57 +08:00
AlexOne 24b51b64f2 chore: 修改单元测试生成目录
修改单元测试相关文件的目录结构

Log:
Influence: 单元测试目录结构
Change-Id: Idcd26a04e02fc16dd2f83ed6f3cddf6c87f4ba24
2022-02-18 11:11:17 +08:00
Ye ShanShan a53f41135d chore: 部分架构上单元测试打包错误
arm和mips架构,单元测试报munmap_chunk(): invalid pointer错误

Log: 
Influence: 单元测试报错
Change-Id: Iff51f48a20c318b0fabc6f9fe14afc00f46cf4cc
2021-11-01 15:07:12 +08:00
ck d2b41535cd chore: 部分单元测试依赖窗口特效
windowmanager有些单元测试写的不合理,用来判断是否开启特效是否支持模糊的不能直接
断定为true. platformhandle部分接口需要有模糊支持才能成功。

Log:
Change-Id: I7a03d4954d23e0d96a560c20f9c5b155aa2f0713
(cherry picked from commit e3fe88eb0d)
2021-09-06 11:01:55 +08:00
ck 14a2e1a0e1 feat: 输出测试报告xml文件
增加测试用例输出成xml,便于后端获取测试报告数据

Log: UT输出xml报告数据
Change-Id: I313b9ed21d60b12021972dd1535b4ec5c01b79ac
2021-07-07 17:38:49 +08:00
wangpenga ffab5edef0 fix: 单元测试内存泄露
修复单元测试中 dforeignwindow 的内存泄露。

Log:
Change-Id: I531c233c6496b9ea1e2f62185b86181d160753aa
2021-07-06 09:11:34 +08:00
Chen Bin 17b58b0bb7 chore: 单元测试文件增加copyright
补上单元测试文件遗漏的copyright

Log:
Change-Id: Ia678a90b33ea4bd7e70c6f4013d5ba1befccf9c9
(cherry picked from commit 06462b7dda026efa7d46d837f86951108c28bacb)
2021-07-02 11:37:24 +08:00
wangpenga 87b29bde2d fix: unit test memory leak check failed due to AddressSanitizer.
添加参数使得内存检测的误报不影响单元测试结果生成。
环境变量和编译参数要配合使用。

Log:
Change-Id: I144217f1ac5116e94c58e0c065e24360deb427b9
2021-06-11 15:30:29 +08:00
AlexOne 0bc6f7572b fix: unit test failed, due to QDataStream set qt version.
单元测试里面的 datastream 设置了 qt 版本号导致单元测试失败。
在qt5.11下ok,社区版默认qt5.15。读写不同版本出错。

Log: 修复社区版下单元测试失败的问题
Change-Id: I4693070762b653373bf5a4fcac4598fca69f8356
2021-06-07 20:16:51 +08:00
wangpenga 93724d74c1 fix: Add memory leak detection parameters
添加内存泄露检测参数

Log:
Change-Id: I40103596f81c92153f0b3bb437149e12d1b7b7f3
2021-06-04 15:48:00 +08:00
AlexOne 959c3ebc10 fix: eliminate warning
消除 if 语句缺少括号造成的警告

Log:
Change-Id: Ia52e5ad05313c8b860d51da6d160a51c5fa7dec2
2021-05-06 11:39:14 +08:00
Chen Bin 2161407cbc feat: 添加gtest单元测试
1.增加部分文件的单元测试文件
2.提高单元测试覆盖率到70以上

Log: 新增dtkgui单元测试
Change-Id: Icd8e3702ece36f6af565e2b9453015218da35953
2021-03-24 15:39:22 +08:00
Chen Bin 6e3f7d497d feat: 添加部分单元测试
1.添加项目内单元测试文件
2.修改部分源码以适应单元测试

Log: 提高dtkgui单元测试覆盖率到50以上
Change-Id: Ib3cf3ccadbefbc334883c175b0a9c47d1b8674d8
2021-03-12 17:45:13 +08:00
chengyulong 58e254702f feat: 增加单元测试覆盖率
对项目目录结构进行优化,增加lcov计算单元测试覆盖率。

Log: 增加lcov计算单元测试覆盖率
Change-Id: I4454aee03a1dffb8e9bc443b967aa84e7dc57a60
2021-02-04 18:11:59 +08:00