diff -Nru qt5-ukui-platformtheme-4.1.0.0/debian/changelog qt5-ukui-platformtheme-4.1.0.0/debian/changelog --- qt5-ukui-platformtheme-4.1.0.0/debian/changelog 2024-11-08 09:49:00.000000000 +0800 +++ qt5-ukui-platformtheme-4.1.0.0/debian/changelog 2025-02-17 10:28:03.000000000 +0800 @@ -1,3 +1,23 @@ +qt5-ukui-platformtheme (4.1.0.0-ok55) nile; urgency=medium + + * 改动: + BUG号: #I9VLYZ 拖动文件到侧边栏目录上,框选的蓝色边框显示不完整 + 需求号:无 + 其他改动:新增翻译 + 影响域:无 + + -- tanjing <tanjing@kylinos.cn> Mon, 17 Feb 2025 10:28:03 +0800 + +qt5-ukui-platformtheme (4.1.0.0-ok54) nile; urgency=medium + + * 改动: + BUG号: #IAY3M0 任务栏声音网络页签悬浮效果异常 + 需求号:无 + 其他改动:五 + 影响域:无 + + -- wuruiwen <wuruiwen@kylinos.cn> Wed, 12 Feb 2025 15:01:00 +0800 + qt5-ukui-platformtheme (4.1.0.0-ok53) nile; urgency=medium * 改动: diff -Nru qt5-ukui-platformtheme-4.1.0.0/debian/patches/0077-.patch qt5-ukui-platformtheme-4.1.0.0/debian/patches/0077-.patch --- qt5-ukui-platformtheme-4.1.0.0/debian/patches/0077-.patch 1970-01-01 08:00:00.000000000 +0800 +++ qt5-ukui-platformtheme-4.1.0.0/debian/patches/0077-.patch 2025-02-17 10:28:03.000000000 +0800 @@ -0,0 +1,124 @@ +From: =?utf-8?b?5p2O5p+v?= <like1@kylinos.cn> +Date: Wed, 27 Nov 2024 20:39:35 +0800 +Subject: =?utf-8?b?5a6M5oiQ5Li76aKY5qGG5p625Y2V5YWD5rWL6K+V5qGG5p625p6E5bu6?= + +--- + CMakeLists.txt | 1 + + test/CMakeLists.txt | 3 +++ + test/auto-test/CMakeLists.txt | 31 ++++++++++++++++++++++++++ + test/auto-test/test-settings.cpp | 48 ++++++++++++++++++++++++++++++++++++++++ + 4 files changed, 83 insertions(+) + create mode 100644 test/auto-test/CMakeLists.txt + create mode 100644 test/auto-test/test-settings.cpp + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 47ef06a..ce2a998 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -6,3 +6,4 @@ add_subdirectory(qt5-ukui-platformtheme) + add_subdirectory(ukui-qqc2-style) + add_subdirectory(ukui-qml-style-helper) + add_subdirectory(test) ++enable_testing() +diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt +index c659fa4..fe698e6 100644 +--- a/test/CMakeLists.txt ++++ b/test/CMakeLists.txt +@@ -7,3 +7,6 @@ add_subdirectory(region-blur) + add_subdirectory(system-settings) + add_subdirectory(tabwidget) + add_subdirectory(mps-style-application) ++add_subdirectory(auto-test) ++ ++enable_testing() +diff --git a/test/auto-test/CMakeLists.txt b/test/auto-test/CMakeLists.txt +new file mode 100644 +index 0000000..0e3fe9b +--- /dev/null ++++ b/test/auto-test/CMakeLists.txt +@@ -0,0 +1,31 @@ ++set(CMAKE_AUTOMOC on) ++ ++# 查找Qt组件 ++find_package(QT NAMES Qt6 Qt5 COMPONENTS Gui Test DBus Qml Widgets REQUIRED) ++find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Gui Test DBus Qml Widgets REQUIRED) ++ ++# 查找PkgConfig工具 ++find_package(PkgConfig REQUIRED) ++ ++# 设置库文件名变量 ++include_directories(../../libqt5-ukui-style) ++ ++# 将库文件路径添加到库搜索路径中 ++link_directories(${LIBRARY_DIR}) ++ ++# 添加可执行文件test-settings ++add_executable(test-settings ++ test-settings.cpp) ++ ++include_directories("/usr/lib/x86_64-linux-gnu/qt5/plugins/platformthemes") ++ ++# 链接Qt组件到可执行文件test-settings ++target_link_libraries(test-settings PRIVATE Qt${QT_VERSION_MAJOR}::Test ++ Qt${QT_VERSION_MAJOR}::DBus ++ Qt${QT_VERSION_MAJOR}::Gui ++ Qt5::Widgets ++ qt5-ukui-style) ++ ++# 添加测试用例 ++add_test(NAME test-settings COMMAND test-settings) ++ +diff --git a/test/auto-test/test-settings.cpp b/test/auto-test/test-settings.cpp +new file mode 100644 +index 0000000..9dbee3a +--- /dev/null ++++ b/test/auto-test/test-settings.cpp +@@ -0,0 +1,48 @@ ++/* ++ * * Copyright (C) 2024, KylinSoft Co., Ltd. ++ * * ++ * * This program is free software: you can redistribute it and/or modify ++ * * it under the terms of the GNU General Public License as published by ++ * * the Free Software Foundation, either version 3 of the License, or ++ * * (at your option) any later version. ++ * * ++ * * This program is distributed in the hope that it will be useful, ++ * * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * * GNU General Public License for more details. ++ * * ++ * * You should have received a copy of the GNU General Public License ++ * * along with this program. If not, see <https://www.gnu.org/licenses/>. ++ * * ++ * * Authors: like <like1@kylinos.cn> ++ * ++ */ ++#include <QtTest> ++#include <dlfcn.h> ++ ++#include <dlfcn.h> // 用于动态加载库函数的头文件 ++#include "effects/highlight-effect.h" ++ ++// 定义函数指针类型,与库中函数的签名匹配 ++typedef void (*FunctionInLibType)(void); ++ ++// 测试用例类,继承自QObject ++class LibFunctionTest : public QObject ++{ ++ Q_OBJECT ++public: ++ ++private slots: ++ // 测试调用库中函数的功能 ++ void testFunctionInLib() ++ { ++ QWidget w; ++ ++ HighLightEffect::setSkipEffect(&w, true); ++ } ++}; ++ ++// 定义测试用例入口点setSkipEffect ++QTEST_MAIN(LibFunctionTest) ++ ++#include "test-settings.moc" diff -Nru qt5-ukui-platformtheme-4.1.0.0/debian/patches/0078-pc.patch qt5-ukui-platformtheme-4.1.0.0/debian/patches/0078-pc.patch --- qt5-ukui-platformtheme-4.1.0.0/debian/patches/0078-pc.patch 1970-01-01 08:00:00.000000000 +0800 +++ qt5-ukui-platformtheme-4.1.0.0/debian/patches/0078-pc.patch 2025-02-17 10:28:03.000000000 +0800 @@ -0,0 +1,28 @@ +From: =?utf-8?b?6LCt6Z2Z?= <tanjing@kylinos.cn> +Date: Mon, 9 Dec 2024 23:35:56 +0800 +Subject: =?utf-8?b?5bmz5p2/44CBcGPmqKHlvI/liIfmjaLlk43lupTlh73mlbDmlLnkuLo=?= + =?utf-8?b?5qe95Ye95pWw?= + +--- + ukui-styles/ukui-style-plugin.h | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/ukui-styles/ukui-style-plugin.h b/ukui-styles/ukui-style-plugin.h +index 6ee6041..99c57f5 100644 +--- a/ukui-styles/ukui-style-plugin.h ++++ b/ukui-styles/ukui-style-plugin.h +@@ -46,9 +46,13 @@ public: + + const QStringList blackList(); + ++ ++public Q_SLOTS: ++ void tableModeChanged(bool isTableMode); ++ + protected: + void onSystemPaletteChanged(); +- void tableModeChanged(bool isTableMode); ++ + + private: + QString m_current_style_name; diff -Nru qt5-ukui-platformtheme-4.1.0.0/debian/patches/0079-Translated-using-Weblate-Vietnamese.patch qt5-ukui-platformtheme-4.1.0.0/debian/patches/0079-Translated-using-Weblate-Vietnamese.patch --- qt5-ukui-platformtheme-4.1.0.0/debian/patches/0079-Translated-using-Weblate-Vietnamese.patch 1970-01-01 08:00:00.000000000 +0800 +++ qt5-ukui-platformtheme-4.1.0.0/debian/patches/0079-Translated-using-Weblate-Vietnamese.patch 2025-02-17 10:28:03.000000000 +0800 @@ -0,0 +1,749 @@ +From: KevinDuan <duankaiwen@kylinos.cn> +Date: Tue, 11 Feb 2025 08:50:28 +0000 +Subject: Translated using Weblate (Vietnamese) + +Currently translated at 100.0% (63 of 63 strings) + +Translation: openkylin-nile-new/qt5-ukui-platformtheme +Translate-URL: http://weblate.openkylin.top/projects/openkylin-nile-new/qt5-ukui-platformtheme/vi/ +--- + translations/qt5-ukui-platformtheme_ar.ts | 361 ++++++++++++++++++++++++++++++ + translations/qt5-ukui-platformtheme_vi.ts | 361 ++++++++++++++++++++++++++++++ + 2 files changed, 722 insertions(+) + create mode 100644 translations/qt5-ukui-platformtheme_ar.ts + create mode 100644 translations/qt5-ukui-platformtheme_vi.ts + +diff --git a/translations/qt5-ukui-platformtheme_ar.ts b/translations/qt5-ukui-platformtheme_ar.ts +new file mode 100644 +index 0000000..d2242b2 +--- /dev/null ++++ b/translations/qt5-ukui-platformtheme_ar.ts +@@ -0,0 +1,361 @@ ++<?xml version="1.0" encoding="utf-8"?> ++<!DOCTYPE TS> ++<TS version="2.1" language="ar"> ++<context> ++ <name>MainWindow</name> ++ <message> ++ <location filename="../test/filedialog/mainwindow.ui" line="14"/> ++ <location filename="../test/highlighted-icon-button/mainwindow.ui" line="14"/> ++ <location filename="../test/mps-style-application/mainwindow.ui" line="14"/> ++ <location filename="../test/system-settings/mainwindow.ui" line="14"/> ++ <source>MainWindow</source> ++ <translation>النافذة الرئيسية</translation> ++ </message> ++ <message> ++ <location filename="../test/filedialog/mainwindow.ui" line="30"/> ++ <source>test open</source> ++ <translation>اختبار مفتوح</translation> ++ </message> ++ <message> ++ <location filename="../test/filedialog/mainwindow.ui" line="37"/> ++ <source>directory</source> ++ <translation>دليل</translation> ++ </message> ++ <message> ++ <location filename="../test/filedialog/mainwindow.ui" line="47"/> ++ <source>selected uri</source> ++ <translation>URI محدد</translation> ++ </message> ++ <message> ++ <location filename="../test/filedialog/mainwindow.ui" line="54"/> ++ <source>test show</source> ++ <translation>عرض الاختبار</translation> ++ </message> ++ <message> ++ <location filename="../test/filedialog/mainwindow.ui" line="64"/> ++ <source>test exec</source> ++ <translation>اختبار التنفيذ</translation> ++ </message> ++ <message> ++ <location filename="../test/filedialog/mainwindow.ui" line="71"/> ++ <source>test save</source> ++ <translation>اختبار الحفظ</translation> ++ </message> ++ <message> ++ <location filename="../test/filedialog/mainwindow.ui" line="78"/> ++ <source>test static open</source> ++ <translation>اختبار ثابت مفتوح</translation> ++ </message> ++ <message> ++ <location filename="../test/highlighted-icon-button/mainwindow.ui" line="30"/> ++ <location filename="../test/mps-style-application/mainwindow.ui" line="36"/> ++ <source>PushButton</source> ++ <translation>زر الضغط</translation> ++ </message> ++ <message> ++ <location filename="../test/highlighted-icon-button/mainwindow.ui" line="47"/> ++ <source>use auto highlight icon</source> ++ <translation>استخدام أيقونة التمييز التلقائي</translation> ++ </message> ++ <message> ++ <location filename="../test/highlighted-icon-button/mainwindow.ui" line="54"/> ++ <location filename="../test/mps-style-application/mainwindow.ui" line="43"/> ++ <source>...</source> ++ <translation>...</translation> ++ </message> ++ <message> ++ <location filename="../test/highlighted-icon-button/mainwindow.ui" line="72"/> ++ <source>highlightOnly</source> ++ <translation>تسليط الضوئنافقط</translation> ++ </message> ++ <message> ++ <location filename="../test/highlighted-icon-button/mainwindow.ui" line="77"/> ++ <source>bothDefaultAndHighlight</source> ++ <translation>كلاهما الافتراضي والتمييز</translation> ++ </message> ++ <message> ++ <location filename="../test/mps-style-application/mainwindow.ui" line="50"/> ++ <source>RadioButton</source> ++ <translation>زر الراديو</translation> ++ </message> ++ <message> ++ <location filename="../test/system-settings/mainwindow.ui" line="21"/> ++ <source>style</source> ++ <translation>نمط</translation> ++ </message> ++ <message> ++ <location filename="../test/system-settings/mainwindow.ui" line="31"/> ++ <source>icon</source> ++ <translation>رمز</translation> ++ </message> ++ <message> ++ <location filename="../test/system-settings/mainwindow.ui" line="41"/> ++ <source>menu opacity</source> ++ <translation>عتامة القائمة</translation> ++ </message> ++ <message> ++ <location filename="../test/system-settings/mainwindow.ui" line="55"/> ++ <source>font</source> ++ <translation>الخط</translation> ++ </message> ++</context> ++<context> ++ <name>MessageBox</name> ++ <message> ++ <location filename="../qt5-ukui-platformtheme/widget/messagebox/message-box.cpp" line="97"/> ++ <source>Close</source> ++ <translation>غلق</translation> ++ </message> ++</context> ++<context> ++ <name>QApplication</name> ++ <message> ++ <location filename="../qt5-ukui-platformtheme/widget/messagebox/message-box.h" line="272"/> ++ <source>Executable '%1' requires Qt %2, found Qt %3.</source> ++ <translation>يتطلب الملف القابل للتنفيذ '٪1' Qt٪2، تم العثور على Qt٪3.</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-platformtheme/widget/messagebox/message-box.h" line="274"/> ++ <source>Incompatible Qt Library Error</source> ++ <translation>خطأ مكتبة Qt غير متوافق</translation> ++ </message> ++</context> ++<context> ++ <name>QDialogButtonBox</name> ++ <message> ++ <location filename="../qt5-ukui-platformtheme/widget/messagebox/message-box.cpp" line="362"/> ++ <location filename="../qt5-ukui-platformtheme/widget/messagebox/message-box.cpp" line="1090"/> ++ <source>OK</source> ++ <translation>موافق</translation> ++ </message> ++</context> ++<context> ++ <name>QMessageBox</name> ++ <message> ++ <location filename="../qt5-ukui-platformtheme/widget/messagebox/message-box.cpp" line="418"/> ++ <location filename="../qt5-ukui-platformtheme/widget/messagebox/message-box.cpp" line="881"/> ++ <location filename="../qt5-ukui-platformtheme/widget/messagebox/message-box.cpp" line="1517"/> ++ <source>Show Details...</source> ++ <translation>عرض التفاصيل...</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-platformtheme/widget/messagebox/message-box.cpp" line="881"/> ++ <location filename="../qt5-ukui-platformtheme/widget/messagebox/message-box.cpp" line="1517"/> ++ <source>Hide Details...</source> ++ <translation>إخفاء التفاصيل...</translation> ++ </message> ++</context> ++<context> ++ <name>QObject</name> ++ <message> ++ <location filename="../qt5-ukui-filedialog/ui_kyfiledialog.cpp" line="259"/> ++ <source>File Name</source> ++ <translation>اسم الملف</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/ui_kyfiledialog.cpp" line="263"/> ++ <source>Modified Date</source> ++ <translation>تاريخ التعديل</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/ui_kyfiledialog.cpp" line="267"/> ++ <source>File Type</source> ++ <translation>نوع الملف</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/ui_kyfiledialog.cpp" line="271"/> ++ <source>File Size</source> ++ <translation>حجم الملف</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/ui_kyfiledialog.cpp" line="275"/> ++ <source>Original Path</source> ++ <translation>المسار الأصلي</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/ui_kyfiledialog.cpp" line="284"/> ++ <source>Descending</source> ++ <translation>تنازلي</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/ui_kyfiledialog.cpp" line="289"/> ++ <source>Ascending</source> ++ <translation>تصاعدي</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/ui_kyfiledialog.cpp" line="295"/> ++ <source>Use global sorting</source> ++ <translation>استخدام الفرز العمومي</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/ui_kyfiledialog.cpp" line="315"/> ++ <source>List View</source> ++ <translation>عرض القائمة</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/ui_kyfiledialog.cpp" line="316"/> ++ <source>Icon View</source> ++ <translation>عرض الأيقونة</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-platformtheme/widget/messagebox/message-box.cpp" line="730"/> ++ <source>Close</source> ++ <translation>غلق</translation> ++ </message> ++</context> ++<context> ++ <name>UKUI::TabWidget::DefaultSlideAnimatorFactory</name> ++ <message> ++ <location filename="../libqt5-ukui-style/animations/tabwidget/ukui-tabwidget-default-slide-animator-factory.h" line="50"/> ++ <source>Default Slide</source> ++ <translation>الشريحة الافتراضية</translation> ++ </message> ++ <message> ++ <location filename="../libqt5-ukui-style/animations/tabwidget/ukui-tabwidget-default-slide-animator-factory.h" line="51"/> ++ <source>Let tab widget switch with a slide animation.</source> ++ <translation>اسمح لعنصر واجهة مستخدم علامة التبويب بالتبديل باستخدام حركة شريحة.</translation> ++ </message> ++</context> ++<context> ++ <name>UKUIFileDialog::KyFileDialogHelper</name> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="2706"/> ++ <source>Open File</source> ++ <translation>افتح ملف</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="2707"/> ++ <source>Save File</source> ++ <translation>حفظ الملف</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="2720"/> ++ <source>All Files (*)</source> ++ <translation>جميع الملفات (*)</translation> ++ </message> ++</context> ++<context> ++ <name>UKUIFileDialog::KyNativeFileDialog</name> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="221"/> ++ <source>Go Back</source> ++ <translation>الرجوع للخلف</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="228"/> ++ <source>Go Forward</source> ++ <translation>المضي قدما</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="234"/> ++ <source>Cd Up</source> ++ <translation>القرص المضغوط</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="241"/> ++ <source>Search</source> ++ <translation>بحث</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="249"/> ++ <source>View Type</source> ++ <translation>نوع العرض</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="260"/> ++ <source>Sort Type</source> ++ <translation>نوع الفرز</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="265"/> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="378"/> ++ <source>Maximize</source> ++ <translation>تعظيم</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="279"/> ++ <source>Close</source> ++ <translation>غلق</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="375"/> ++ <source>Restore</source> ++ <translation>يستعيد</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="987"/> ++ <source>Name</source> ++ <translation>اسم</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="990"/> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="1578"/> ++ <source>Open</source> ++ <translation>مفتوح</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="991"/> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="1000"/> ++ <source>Cancel</source> ++ <translation>إلغاء الأمر</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="995"/> ++ <source>Save as</source> ++ <translation>حفظ باسم</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="997"/> ++ <source>New Folder</source> ++ <translation>مجلد جديد</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="999"/> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="1582"/> ++ <source>Save</source> ++ <translation>أنقذ</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="1035"/> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="1036"/> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="1038"/> ++ <source>Directories</source> ++ <translation>الدلائل</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="1227"/> ++ <source>Warning</source> ++ <translation>تحذير</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="1227"/> ++ <source>exist, are you sure replace?</source> ++ <translation>موجودة ، هل أنت متأكد من استبدالها؟</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="1920"/> ++ <source>NewFolder</source> ++ <translation>NewFolder</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="2208"/> ++ <source>Undo</source> ++ <translation>تراجع</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="2215"/> ++ <source>Redo</source> ++ <translation>اعاده</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="2414"/> ++ <source>warn</source> ++ <translation>حذر</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="2414"/> ++ <source>This operation is not supported.</source> ++ <translation>هذه العملية غير مدعومة.</translation> ++ </message> ++</context> ++</TS> +diff --git a/translations/qt5-ukui-platformtheme_vi.ts b/translations/qt5-ukui-platformtheme_vi.ts +new file mode 100644 +index 0000000..17da46d +--- /dev/null ++++ b/translations/qt5-ukui-platformtheme_vi.ts +@@ -0,0 +1,361 @@ ++<?xml version="1.0" encoding="utf-8"?> ++<!DOCTYPE TS> ++<TS version="2.1" language="vi"> ++<context> ++ <name>MainWindow</name> ++ <message> ++ <location filename="../test/filedialog/mainwindow.ui" line="14"/> ++ <location filename="../test/highlighted-icon-button/mainwindow.ui" line="14"/> ++ <location filename="../test/mps-style-application/mainwindow.ui" line="14"/> ++ <location filename="../test/system-settings/mainwindow.ui" line="14"/> ++ <source>MainWindow</source> ++ <translation>Cửa sổ chính</translation> ++ </message> ++ <message> ++ <location filename="../test/filedialog/mainwindow.ui" line="30"/> ++ <source>test open</source> ++ <translation>Thử nghiệm mở</translation> ++ </message> ++ <message> ++ <location filename="../test/filedialog/mainwindow.ui" line="37"/> ++ <source>directory</source> ++ <translation>thư mục</translation> ++ </message> ++ <message> ++ <location filename="../test/filedialog/mainwindow.ui" line="47"/> ++ <source>selected uri</source> ++ <translation>URI đã chọn</translation> ++ </message> ++ <message> ++ <location filename="../test/filedialog/mainwindow.ui" line="54"/> ++ <source>test show</source> ++ <translation>chương trình thử nghiệm</translation> ++ </message> ++ <message> ++ <location filename="../test/filedialog/mainwindow.ui" line="64"/> ++ <source>test exec</source> ++ <translation>Kiểm tra exec</translation> ++ </message> ++ <message> ++ <location filename="../test/filedialog/mainwindow.ui" line="71"/> ++ <source>test save</source> ++ <translation>Lưu thử nghiệm</translation> ++ </message> ++ <message> ++ <location filename="../test/filedialog/mainwindow.ui" line="78"/> ++ <source>test static open</source> ++ <translation>Kiểm tra tĩnh mở</translation> ++ </message> ++ <message> ++ <location filename="../test/highlighted-icon-button/mainwindow.ui" line="30"/> ++ <location filename="../test/mps-style-application/mainwindow.ui" line="36"/> ++ <source>PushButton</source> ++ <translation>Nút bấm</translation> ++ </message> ++ <message> ++ <location filename="../test/highlighted-icon-button/mainwindow.ui" line="47"/> ++ <source>use auto highlight icon</source> ++ <translation>Sử dụng biểu tượng tự động đánh dấu</translation> ++ </message> ++ <message> ++ <location filename="../test/highlighted-icon-button/mainwindow.ui" line="54"/> ++ <location filename="../test/mps-style-application/mainwindow.ui" line="43"/> ++ <source>...</source> ++ <translation>...</translation> ++ </message> ++ <message> ++ <location filename="../test/highlighted-icon-button/mainwindow.ui" line="72"/> ++ <source>highlightOnly</source> ++ <translation>highlightChỉ</translation> ++ </message> ++ <message> ++ <location filename="../test/highlighted-icon-button/mainwindow.ui" line="77"/> ++ <source>bothDefaultAndHighlight</source> ++ <translation>cả haiDefaultAndHighlight</translation> ++ </message> ++ <message> ++ <location filename="../test/mps-style-application/mainwindow.ui" line="50"/> ++ <source>RadioButton</source> ++ <translation>Nút radio</translation> ++ </message> ++ <message> ++ <location filename="../test/system-settings/mainwindow.ui" line="21"/> ++ <source>style</source> ++ <translation>phong cách</translation> ++ </message> ++ <message> ++ <location filename="../test/system-settings/mainwindow.ui" line="31"/> ++ <source>icon</source> ++ <translation>biểu tượng</translation> ++ </message> ++ <message> ++ <location filename="../test/system-settings/mainwindow.ui" line="41"/> ++ <source>menu opacity</source> ++ <translation>Độ mờ của menu</translation> ++ </message> ++ <message> ++ <location filename="../test/system-settings/mainwindow.ui" line="55"/> ++ <source>font</source> ++ <translation>phông</translation> ++ </message> ++</context> ++<context> ++ <name>MessageBox</name> ++ <message> ++ <location filename="../qt5-ukui-platformtheme/widget/messagebox/message-box.cpp" line="97"/> ++ <source>Close</source> ++ <translation>Đóng</translation> ++ </message> ++</context> ++<context> ++ <name>QApplication</name> ++ <message> ++ <location filename="../qt5-ukui-platformtheme/widget/messagebox/message-box.h" line="272"/> ++ <source>Executable '%1' requires Qt %2, found Qt %3.</source> ++ <translation>Tệp thực thi '%1' yêu cầu Qt %2, tìm thấy Qt %3.</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-platformtheme/widget/messagebox/message-box.h" line="274"/> ++ <source>Incompatible Qt Library Error</source> ++ <translation>Lỗi thư viện Qt không tương thích</translation> ++ </message> ++</context> ++<context> ++ <name>QDialogButtonBox</name> ++ <message> ++ <location filename="../qt5-ukui-platformtheme/widget/messagebox/message-box.cpp" line="362"/> ++ <location filename="../qt5-ukui-platformtheme/widget/messagebox/message-box.cpp" line="1090"/> ++ <source>OK</source> ++ <translation>OK</translation> ++ </message> ++</context> ++<context> ++ <name>QMessageBox</name> ++ <message> ++ <location filename="../qt5-ukui-platformtheme/widget/messagebox/message-box.cpp" line="418"/> ++ <location filename="../qt5-ukui-platformtheme/widget/messagebox/message-box.cpp" line="881"/> ++ <location filename="../qt5-ukui-platformtheme/widget/messagebox/message-box.cpp" line="1517"/> ++ <source>Show Details...</source> ++ <translation>Hiển thị chi tiết...</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-platformtheme/widget/messagebox/message-box.cpp" line="881"/> ++ <location filename="../qt5-ukui-platformtheme/widget/messagebox/message-box.cpp" line="1517"/> ++ <source>Hide Details...</source> ++ <translation>Ẩn chi tiết...</translation> ++ </message> ++</context> ++<context> ++ <name>QObject</name> ++ <message> ++ <location filename="../qt5-ukui-filedialog/ui_kyfiledialog.cpp" line="259"/> ++ <source>File Name</source> ++ <translation>Tên tập tin</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/ui_kyfiledialog.cpp" line="263"/> ++ <source>Modified Date</source> ++ <translation>Ngày sửa đổi</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/ui_kyfiledialog.cpp" line="267"/> ++ <source>File Type</source> ++ <translation>Loại tệp</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/ui_kyfiledialog.cpp" line="271"/> ++ <source>File Size</source> ++ <translation>Kích thước tệp</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/ui_kyfiledialog.cpp" line="275"/> ++ <source>Original Path</source> ++ <translation>Đường dẫn ban đầu</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/ui_kyfiledialog.cpp" line="284"/> ++ <source>Descending</source> ++ <translation>Giảm dần</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/ui_kyfiledialog.cpp" line="289"/> ++ <source>Ascending</source> ++ <translation>Tăng dần</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/ui_kyfiledialog.cpp" line="295"/> ++ <source>Use global sorting</source> ++ <translation>Sử dụng sắp xếp toàn cầu</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/ui_kyfiledialog.cpp" line="315"/> ++ <source>List View</source> ++ <translation>Chế độ xem danh sách</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/ui_kyfiledialog.cpp" line="316"/> ++ <source>Icon View</source> ++ <translation>Chế độ xem biểu tượng</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-platformtheme/widget/messagebox/message-box.cpp" line="730"/> ++ <source>Close</source> ++ <translation>Đóng</translation> ++ </message> ++</context> ++<context> ++ <name>UKUI::TabWidget::DefaultSlideAnimatorFactory</name> ++ <message> ++ <location filename="../libqt5-ukui-style/animations/tabwidget/ukui-tabwidget-default-slide-animator-factory.h" line="50"/> ++ <source>Default Slide</source> ++ <translation>Trang trình bày mặc định</translation> ++ </message> ++ <message> ++ <location filename="../libqt5-ukui-style/animations/tabwidget/ukui-tabwidget-default-slide-animator-factory.h" line="51"/> ++ <source>Let tab widget switch with a slide animation.</source> ++ <translation>Hãy để tiện ích tab chuyển đổi với hoạt ảnh trang chiếu.</translation> ++ </message> ++</context> ++<context> ++ <name>UKUIFileDialog::KyFileDialogHelper</name> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="2706"/> ++ <source>Open File</source> ++ <translation>Mở tập tin</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="2707"/> ++ <source>Save File</source> ++ <translation>Lưu tập tin</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="2720"/> ++ <source>All Files (*)</source> ++ <translation>Tất cả các tệp (*)</translation> ++ </message> ++</context> ++<context> ++ <name>UKUIFileDialog::KyNativeFileDialog</name> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="221"/> ++ <source>Go Back</source> ++ <translation>Quay lại</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="228"/> ++ <source>Go Forward</source> ++ <translation>Tiếp tục</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="234"/> ++ <source>Cd Up</source> ++ <translation>Cd Up</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="241"/> ++ <source>Search</source> ++ <translation>Tìm kiếm</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="249"/> ++ <source>View Type</source> ++ <translation>Loại xem</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="260"/> ++ <source>Sort Type</source> ++ <translation>Loại sắp xếp</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="265"/> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="378"/> ++ <source>Maximize</source> ++ <translation>Tối đa hóa</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="279"/> ++ <source>Close</source> ++ <translation>Đóng</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="375"/> ++ <source>Restore</source> ++ <translation>Khôi phục</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="987"/> ++ <source>Name</source> ++ <translation>Tên</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="990"/> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="1578"/> ++ <source>Open</source> ++ <translation>Mở</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="991"/> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="1000"/> ++ <source>Cancel</source> ++ <translation>Hủy</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="995"/> ++ <source>Save as</source> ++ <translation>Lưu dưới dạng</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="997"/> ++ <source>New Folder</source> ++ <translation>Thư mục mới</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="999"/> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="1582"/> ++ <source>Save</source> ++ <translation>Cứu</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="1035"/> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="1036"/> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="1038"/> ++ <source>Directories</source> ++ <translation>Thư mục</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="1227"/> ++ <source>Warning</source> ++ <translation>Cảnh báo</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="1227"/> ++ <source>exist, are you sure replace?</source> ++ <translation>tồn tại, bạn có chắc chắn thay thế không?</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="1920"/> ++ <source>NewFolder</source> ++ <translation>Thư mục mới</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="2208"/> ++ <source>Undo</source> ++ <translation>Hoàn tác</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="2215"/> ++ <source>Redo</source> ++ <translation>Redo</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="2414"/> ++ <source>warn</source> ++ <translation>cảnh báo</translation> ++ </message> ++ <message> ++ <location filename="../qt5-ukui-filedialog/kyfiledialog.cpp" line="2414"/> ++ <source>This operation is not supported.</source> ++ <translation>Hoạt động này không được hỗ trợ.</translation> ++ </message> ++</context> ++</TS> diff -Nru qt5-ukui-platformtheme-4.1.0.0/debian/patches/0080-BUG-IAY3M0-fix-the-abnormal-hover-effect-of-the-ukui.patch qt5-ukui-platformtheme-4.1.0.0/debian/patches/0080-BUG-IAY3M0-fix-the-abnormal-hover-effect-of-the-ukui.patch --- qt5-ukui-platformtheme-4.1.0.0/debian/patches/0080-BUG-IAY3M0-fix-the-abnormal-hover-effect-of-the-ukui.patch 1970-01-01 08:00:00.000000000 +0800 +++ qt5-ukui-platformtheme-4.1.0.0/debian/patches/0080-BUG-IAY3M0-fix-the-abnormal-hover-effect-of-the-ukui.patch 2025-02-17 10:28:03.000000000 +0800 @@ -0,0 +1,347 @@ +From: wuruiwen <wuruiwen@kylinos.cn> +Date: Wed, 12 Feb 2025 17:01:33 +0800 +Subject: BUG#IAY3M0, + fix the abnormal hover effect of the ukui-volume-control-applet-qt and + kylin-nm tabs + +--- + .../qt5-config-style-ukui/themeconfig/default.json | 4 +- + .../ukui-config-style-parameters.cpp | 9 +- + .../qt5-config-style-ukui/ukui-config-style.cpp | 213 +++++++++++++++++---- + 3 files changed, 189 insertions(+), 37 deletions(-) + +diff --git a/ukui-styles/qt5-config-style-ukui/themeconfig/default.json b/ukui-styles/qt5-config-style-ukui/themeconfig/default.json +index b34f25c..3f3c1be 100644 +--- a/ukui-styles/qt5-config-style-ukui/themeconfig/default.json ++++ b/ukui-styles/qt5-config-style-ukui/themeconfig/default.json +@@ -449,7 +449,7 @@ + "WidgetBackgroundBrush" : {"value": "Base_at", "type": "paletterole"}, + "TabBarBackgroundBrush" : {"value": "Window_at", "type": "paletterole"}, + "TabBarDefaultBrush" : {"value": "Window_at", "type": "paletterole"}, +- "TabBarHoverBrush" : {"value": "0, 0, 0, 0.05", "type": "color"}, ++ "TabBarHoverBrush" : {"value": "Window_at", "type": "paletterole"}, + "TabBarSelectBrush" : {"value": "Base_at", "type": "paletterole"}, + "TabBarClickBrush" : {"value": "Base_at", "type": "paletterole"}, + "TabBarFocusPen" : {"value": "HighLight_at", "type": "paletterole"} +@@ -908,7 +908,7 @@ + "WidgetBackgroundBrush" : {"value": "Base_at", "type": "paletterole"}, + "TabBarBackgroundBrush" : {"value": "Window_at", "type": "paletterole"}, + "TabBarDefaultBrush" : {"value": "Window_at", "type": "paletterole"}, +- "TabBarHoverBrush" : {"value": "255, 255, 255, 0.15","type": "color"}, ++ "TabBarHoverBrush" : {"value": "Window_at", "type": "paletterole"}, + "TabBarSelectBrush" : {"value": "Base_at", "type": "paletterole"}, + "TabBarClickBrush" : {"value": "Base_at", "type": "paletterole"}, + "TabBarFocusPen" : {"value": "HighLight_at", "type": "paletterole"} +diff --git a/ukui-styles/qt5-config-style-ukui/ukui-config-style-parameters.cpp b/ukui-styles/qt5-config-style-ukui/ukui-config-style-parameters.cpp +index d929484..14de118 100644 +--- a/ukui-styles/qt5-config-style-ukui/ukui-config-style-parameters.cpp ++++ b/ukui-styles/qt5-config-style-ukui/ukui-config-style-parameters.cpp +@@ -137,7 +137,6 @@ void UKUIConfigStyleParameters::initialDefaultPaletteColor(QString colorPath, bo + m_readCfg->deleteLater(); + m_readCfg = nullptr; + } +- + m_readCfg = new ReadThemeConfig(colorPath, isDark); + m_adjustColorRules = m_readCfg->getColorValueAdjustRules() == "HSL" ? AdjustColorRules::HSL : AdjustColorRules::DefaultRGB; + UKUIColorTheme::PaletteColorCfg paletteColorCfg = m_readCfg->paletteColorCfg(); +@@ -247,8 +246,9 @@ void UKUIConfigStyleParameters::initPalette(bool isDark) + cDebug << "homelocation:" << QStandardPaths::writableLocation(QStandardPaths::HomeLocation); + QString cfgPath = QStandardPaths::writableLocation(QStandardPaths::HomeLocation) + + HomeCFGColorPath + cfgName(); +- if(!QFile::exists(cfgPath)) ++ if (!QFile::exists(cfgPath)) { + cfgPath = ColorPath + cfgName(); ++ } + initialDefaultPaletteColor(cfgPath, isDark); + } + +@@ -3891,7 +3891,7 @@ void UKUIConfigStyleParameters::getDefaultToolTipParameters(ConfigToolTipParamet + p->toolTipBackgroundBrush = m_ToolTipParameters.toolTipBackgroundBrush; + p->toolTipBackgroundPen = m_ToolTipParameters.toolTipBackgroundPen ; + } +- ++//解析、初始化TabBar相关颜色 + void UKUIConfigStyleParameters::initConfigTabWidgetParameters(bool isDark, const QStyleOption *option, const QWidget *widget) + { + QPalette palette = option ? option->palette : m_stylePalette; +@@ -3927,6 +3927,9 @@ void UKUIConfigStyleParameters::initConfigTabWidgetParameters(bool isDark, const + linearGradient.setColorAt(0, startColor); + linearGradient.setColorAt(1, endColor); + tabBarHoverBrush = QBrush(linearGradient); ++ } else { //非渐变色类型解析 ++ QColor targetColor = palette.color(QPalette::Active,QPalette::BrightText); ++ tabBarHoverBrush = QBrush(configMixColor(tabBarHoverBrush.color(),targetColor,0.1)); + } + break; + case AdjustColorRules::HSL:{ +diff --git a/ukui-styles/qt5-config-style-ukui/ukui-config-style.cpp b/ukui-styles/qt5-config-style-ukui/ukui-config-style.cpp +index cdf9e85..202ebfe 100644 +--- a/ukui-styles/qt5-config-style-ukui/ukui-config-style.cpp ++++ b/ukui-styles/qt5-config-style-ukui/ukui-config-style.cpp +@@ -235,7 +235,7 @@ UKUIConfigStyle::UKUIConfigStyle(bool dark, bool useDefault, QString type) : QPr + + if (m_style_name == "ukui-default") { + m_default_palette = true; +- } else if (m_style_name == "ukui-dark") { ++ } else if (m_style_name == "ukui-dark") {//根据系统切换的深浅主题,初始化 m_drak_palette + m_drak_palette = true; + } + +@@ -264,8 +264,9 @@ UKUIConfigStyle::UKUIConfigStyle(bool dark, bool useDefault, QString type) : QPr + } + } + +- if(m_widget_theme == "") ++ if (m_widget_theme == "") { + m_widget_theme == "default"; ++ } + + sp = new UKUIConfigStyleParameters(this, isUseDarkPalette(), m_widget_theme); + +@@ -5161,7 +5162,7 @@ void UKUIConfigStyle::drawControl(QStyle::ControlElement element, const QStyleOp + } + break; + } +- ++ //绘制TabBar形状 + case CE_TabBarTabShape: + { + if (const QStyleOptionTab *tab = qstyleoption_cast<const QStyleOptionTab *>(option)) { +@@ -5178,7 +5179,9 @@ void UKUIConfigStyle::drawControl(QStyle::ControlElement element, const QStyleOp + + switch (tab->shape) { + case QTabBar::RoundedNorth: ++ { + break; ++ } + case QTabBar::RoundedSouth: + { + rotMatrix.rotate(180); +@@ -5227,6 +5230,7 @@ void UKUIConfigStyle::drawControl(QStyle::ControlElement element, const QStyleOp + + int tabOverlap = proxy()->pixelMetric(PM_TabBarTabOverlap, option, widget); + int TabBarTab_Radius = sp->m_TabWidgetParameters.radius; ++ //qDebug() << "sp->m_TabWidgetParameters.radius = " << sp->m_TabWidgetParameters.radius; 默认 == 6 + int moveWidth = 0; + if(widget != NULL && qobject_cast<const QTabBar*>(widget)){ + const auto *tabbar = qobject_cast<const QTabBar*>(widget); +@@ -5234,37 +5238,182 @@ void UKUIConfigStyle::drawControl(QStyle::ControlElement element, const QStyleOp + } + QPainterPath path; + QPainterPath penPath; +- if (selected) { +- drawRect.adjust(0, 0, tabOverlap, 0); +- path.moveTo(drawRect.left() + TabBarTab_Radius, drawRect.top()); +- path.arcTo(QRect(drawRect.left(), drawRect.top(), TabBarTab_Radius * 2, TabBarTab_Radius * 2), 90, 90); +- path.lineTo(drawRect.left(), drawRect.bottom() - TabBarTab_Radius); +- path.arcTo(QRect(drawRect.left() - TabBarTab_Radius * 2, drawRect.bottom() - TabBarTab_Radius * 2, +- TabBarTab_Radius * 2, TabBarTab_Radius * 2), 0, -90); +- path.lineTo(drawRect.right() + TabBarTab_Radius, drawRect.bottom()); +- path.arcTo(QRect(drawRect.right(), drawRect.bottom() - TabBarTab_Radius * 2, +- TabBarTab_Radius * 2, TabBarTab_Radius * 2), 270, -90); +- path.lineTo(drawRect.right(), drawRect.top() + TabBarTab_Radius); +- path.arcTo(QRect(drawRect.right() - TabBarTab_Radius * 2, drawRect.top(), +- TabBarTab_Radius * 2, TabBarTab_Radius * 2), 0, 90); +- path.lineTo(drawRect.left() + TabBarTab_Radius, drawRect.top()); +- +-// penPath.moveTo(drawRect.left() + TabBarTab_Radius, drawRect.top()); +-// penPath.arcTo(QRect(drawRect.left(), drawRect.top(), TabBarTab_Radius * 2, TabBarTab_Radius * 2), 90, 90); +-// penPath.lineTo(drawRect.left(), drawRect.bottom() - TabBarTab_Radius); +-// penPath.arcTo(QRect(drawRect.left() - TabBarTab_Radius * 2, drawRect.bottom() - TabBarTab_Radius * 2, ++// if (selected) { ++// drawRect.adjust(0, 0, tabOverlap, 0); ++// path.moveTo(drawRect.left() + TabBarTab_Radius, drawRect.top()); ++// path.arcTo(QRect(drawRect.left(), drawRect.top(), TabBarTab_Radius * 2, TabBarTab_Radius * 2), 90, 90); ++// path.lineTo(drawRect.left(), drawRect.bottom() - TabBarTab_Radius); ++// path.arcTo(QRect(drawRect.left() - TabBarTab_Radius * 2, drawRect.bottom() - TabBarTab_Radius * 2, + // TabBarTab_Radius * 2, TabBarTab_Radius * 2), 0, -90); +-// penPath.moveTo(drawRect.right() - moveWidth + TabBarTab_Radius, drawRect.bottom()); +-// penPath.arcTo(QRect(drawRect.right() - moveWidth, drawRect.bottom() - TabBarTab_Radius * 2, ++// path.lineTo(drawRect.right() + TabBarTab_Radius, drawRect.bottom()); ++// path.arcTo(QRect(drawRect.right(), drawRect.bottom() - TabBarTab_Radius * 2, + // TabBarTab_Radius * 2, TabBarTab_Radius * 2), 270, -90); +-// penPath.lineTo(drawRect.right() - moveWidth, drawRect.top() + TabBarTab_Radius); +-// penPath.arcTo(QRect(drawRect.right() - moveWidth - TabBarTab_Radius * 2, drawRect.top(), ++// path.lineTo(drawRect.right(), drawRect.top() + TabBarTab_Radius); ++// path.arcTo(QRect(drawRect.right() - TabBarTab_Radius * 2, drawRect.top(), + // TabBarTab_Radius * 2, TabBarTab_Radius * 2), 0, 90); +-// penPath.lineTo(drawRect.left() + TabBarTab_Radius, drawRect.top()); +- } else if (hover){ +- +- path.addRoundedRect(drawRect, TabBarTab_Radius, TabBarTab_Radius); +- ++// path.lineTo(drawRect.left() + TabBarTab_Radius, drawRect.top()); ++ ++//// penPath.moveTo(drawRect.left() + TabBarTab_Radius, drawRect.top()); ++//// penPath.arcTo(QRect(drawRect.left(), drawRect.top(), TabBarTab_Radius * 2, TabBarTab_Radius * 2), 90, 90); ++//// penPath.lineTo(drawRect.left(), drawRect.bottom() - TabBarTab_Radius); ++//// penPath.arcTo(QRect(drawRect.left() - TabBarTab_Radius * 2, drawRect.bottom() - TabBarTab_Radius * 2, ++//// TabBarTab_Radius * 2, TabBarTab_Radius * 2), 0, -90); ++//// penPath.moveTo(drawRect.right() - moveWidth + TabBarTab_Radius, drawRect.bottom()); ++//// penPath.arcTo(QRect(drawRect.right() - moveWidth, drawRect.bottom() - TabBarTab_Radius * 2, ++//// TabBarTab_Radius * 2, TabBarTab_Radius * 2), 270, -90); ++//// penPath.lineTo(drawRect.right() - moveWidth, drawRect.top() + TabBarTab_Radius); ++//// penPath.arcTo(QRect(drawRect.right() - moveWidth - TabBarTab_Radius * 2, drawRect.top(), ++//// TabBarTab_Radius * 2, TabBarTab_Radius * 2), 0, 90); ++//// penPath.lineTo(drawRect.left() + TabBarTab_Radius, drawRect.top()); ++// } else if (hover){ ++ ++// path.addRoundedRect(drawRect, TabBarTab_Radius, TabBarTab_Radius); ++ ++ if (widget != NULL && qobject_cast<const QTabBar*>(widget)) { ++ const auto *tabbar = qobject_cast<const QTabBar*>(widget); ++ int select_index = tabbar->currentIndex(); ++ int now_index = tabbar->tabAt(QPoint(drawRect.x(),drawRect.y())); ++ int tab_count = tabbar->count(); ++ ++ if (qAppName() == "kylin-nm" || qAppName() == "ukui-volume-control-applet-qt") { //网络页和声音页 ++ drawRect.adjust(0, 0, tabOverlap, 0); ++ if (now_index == 0) { ++ if (selected) { ++ path.moveTo(drawRect.left(), drawRect.top()); ++ path.lineTo(drawRect.left(), drawRect.bottom()); ++ path.lineTo(drawRect.right() + TabBarTab_Radius, drawRect.bottom()); ++ path.arcTo(QRect(drawRect.right(), drawRect.bottom() - TabBarTab_Radius * 2, ++ TabBarTab_Radius * 2, TabBarTab_Radius * 2), 270, -90); ++ path.lineTo(drawRect.right(), drawRect.top() + TabBarTab_Radius); ++ path.arcTo(QRect(drawRect.right() - TabBarTab_Radius * 2, drawRect.top(), ++ TabBarTab_Radius * 2, TabBarTab_Radius * 2), 0, 90); ++ path.lineTo(drawRect.left(), drawRect.top()); ++ } else { ++ path.moveTo(drawRect.left(), drawRect.top()); ++ path.lineTo(drawRect.left(), drawRect.bottom()); ++ path.lineTo(drawRect.right() - TabBarTab_Radius, drawRect.bottom()); ++ path.arcTo(QRect(drawRect.right() - TabBarTab_Radius * 2, drawRect.bottom() - TabBarTab_Radius * 2, ++ TabBarTab_Radius * 2, TabBarTab_Radius * 2), 270, 90); ++ path.lineTo(drawRect.right(), drawRect.top() + TabBarTab_Radius); ++ path.arcTo(QRect(drawRect.right(), drawRect.top(), ++ TabBarTab_Radius * 2, TabBarTab_Radius * 2), 180, -90); ++ path.lineTo(drawRect.left(), drawRect.top()); ++ } ++ } else if (now_index == tab_count - 1) { ++ if (selected) { ++ path.moveTo(drawRect.left() + TabBarTab_Radius, drawRect.top()); ++ path.arcTo(QRect(drawRect.left(), drawRect.top(), TabBarTab_Radius * 2, TabBarTab_Radius * 2), 90, 90); ++ path.lineTo(drawRect.left(), drawRect.bottom() - TabBarTab_Radius); ++ path.arcTo(QRect(drawRect.left() - TabBarTab_Radius * 2, drawRect.bottom() - TabBarTab_Radius * 2, ++ TabBarTab_Radius * 2, TabBarTab_Radius * 2), 0, -90); ++ path.lineTo(drawRect.right(), drawRect.bottom()); ++ path.lineTo(drawRect.right(), drawRect.top()); ++ path.lineTo(drawRect.left() + TabBarTab_Radius, drawRect.top()); ++ } else { ++ path.moveTo(drawRect.right(), drawRect.bottom()); ++ path.lineTo(drawRect.right(), drawRect.top()); ++ path.lineTo(drawRect.left() - TabBarTab_Radius, drawRect.top()); ++ path.arcTo(QRect(drawRect.left() - TabBarTab_Radius * 2, drawRect.top(), TabBarTab_Radius * 2, TabBarTab_Radius * 2), 90, -90); ++ path.lineTo(drawRect.left(), drawRect.bottom() - TabBarTab_Radius); ++ path.arcTo(QRect(drawRect.left(), drawRect.bottom() - TabBarTab_Radius * 2, ++ TabBarTab_Radius * 2, TabBarTab_Radius * 2), 180, 90); ++ path.lineTo(drawRect.right(), drawRect.bottom()); ++ } ++ } else { ++ path.addRect(drawRect); ++ } ++ } else { ++ if (selected) { ++ drawRect.adjust(0, 0, tabOverlap, 0); ++ path.moveTo(drawRect.left() + TabBarTab_Radius, drawRect.top()); ++ path.arcTo(QRect(drawRect.left(), drawRect.top(), TabBarTab_Radius * 2, TabBarTab_Radius * 2), 90, 90); ++ path.lineTo(drawRect.left(), drawRect.bottom() - TabBarTab_Radius); ++ path.arcTo(QRect(drawRect.left() - TabBarTab_Radius * 2, drawRect.bottom() - TabBarTab_Radius * 2, ++ TabBarTab_Radius * 2, TabBarTab_Radius * 2), 0, -90); ++ path.lineTo(drawRect.right() + TabBarTab_Radius, drawRect.bottom()); ++ path.arcTo(QRect(drawRect.right(), drawRect.bottom() - TabBarTab_Radius * 2, ++ TabBarTab_Radius * 2, TabBarTab_Radius * 2), 270, -90); ++ path.lineTo(drawRect.right(), drawRect.top() + TabBarTab_Radius); ++ path.arcTo(QRect(drawRect.right() - TabBarTab_Radius * 2, drawRect.top(), ++ TabBarTab_Radius * 2, TabBarTab_Radius * 2), 0, 90); ++ path.lineTo(drawRect.left() + TabBarTab_Radius, drawRect.top()); ++ } else { ++ if (select_index - now_index == 1) { ++ //select rect left ++ drawRect.adjust(0, 0, tabOverlap, 0); ++ if (now_index == 0) { ++ path.moveTo(drawRect.left(), drawRect.top() + TabBarTab_Radius); ++ path.lineTo(drawRect.left(), drawRect.bottom()); ++ path.lineTo(drawRect.right() - TabBarTab_Radius, drawRect.bottom()); ++ path.arcTo(QRect(drawRect.right() - TabBarTab_Radius * 2, drawRect.bottom() - TabBarTab_Radius * 2, ++ TabBarTab_Radius * 2, TabBarTab_Radius * 2), 270, 90); ++ path.lineTo(drawRect.right(), drawRect.top() + TabBarTab_Radius); ++ path.arcTo(QRect(drawRect.right(), drawRect.top(), ++ TabBarTab_Radius * 2, TabBarTab_Radius * 2), 180, -90); ++ path.lineTo(drawRect.left() + TabBarTab_Radius, drawRect.top()); ++ path.arcTo(QRect(drawRect.left(), drawRect.top(), ++ TabBarTab_Radius * 2, TabBarTab_Radius * 2), 90, 90); ++ } else { ++ path.moveTo(drawRect.left(), drawRect.top()); ++ path.lineTo(drawRect.left(), drawRect.bottom()); ++ path.lineTo(drawRect.right() - TabBarTab_Radius, drawRect.bottom()); ++ path.arcTo(QRect(drawRect.right() - TabBarTab_Radius * 2, drawRect.bottom() - TabBarTab_Radius * 2, ++ TabBarTab_Radius * 2, TabBarTab_Radius * 2), 270, 90); ++ path.lineTo(drawRect.right(), drawRect.top() + TabBarTab_Radius); ++ path.arcTo(QRect(drawRect.right(), drawRect.top(), ++ TabBarTab_Radius * 2, TabBarTab_Radius * 2), 180, -90); ++ path.lineTo(drawRect.left(), drawRect.top()); ++ } ++ } else if (select_index - now_index == -1) { ++ //select rect right ++ drawRect.adjust(0, 0, tabOverlap, 0); ++ if (now_index == tab_count - 1) { ++ path.moveTo(drawRect.right(), drawRect.bottom()); ++ path.lineTo(drawRect.right(), drawRect.top() + TabBarTab_Radius); ++ path.arcTo(QRect(drawRect.right() - TabBarTab_Radius * 2, drawRect.top(), ++ TabBarTab_Radius * 2, TabBarTab_Radius * 2), 0, 90); ++ path.lineTo(drawRect.left() - TabBarTab_Radius, drawRect.top()); ++ path.arcTo(QRect(drawRect.left() - TabBarTab_Radius * 2, drawRect.top(), ++ TabBarTab_Radius * 2, TabBarTab_Radius * 2), 90, -90); ++ path.lineTo(drawRect.left(), drawRect.bottom() - TabBarTab_Radius); ++ path.arcTo(QRect(drawRect.left(), drawRect.bottom() - TabBarTab_Radius * 2, ++ TabBarTab_Radius * 2, TabBarTab_Radius * 2), 180, 90); ++ path.lineTo(drawRect.right(), drawRect.bottom()); ++ } else { ++ path.moveTo(drawRect.right(), drawRect.bottom()); ++ path.lineTo(drawRect.right(), drawRect.top()); ++ path.lineTo(drawRect.left() - TabBarTab_Radius, drawRect.top()); ++ path.arcTo(QRect(drawRect.left() - TabBarTab_Radius * 2, drawRect.top(), TabBarTab_Radius * 2, TabBarTab_Radius * 2), 90, -90); ++ path.lineTo(drawRect.left(), drawRect.bottom() - TabBarTab_Radius); ++ path.arcTo(QRect(drawRect.left(), drawRect.bottom() - TabBarTab_Radius * 2, ++ TabBarTab_Radius * 2, TabBarTab_Radius * 2), 180, 90); ++ path.lineTo(drawRect.right(), drawRect.bottom()); ++ } ++ } else { ++ if (now_index == 0) { ++ drawRect.adjust(0, 0, tabOverlap, 0); ++ path.moveTo(drawRect.left(), drawRect.top() + TabBarTab_Radius); ++ path.lineTo(drawRect.left(), drawRect.bottom()); ++ path.lineTo(drawRect.right(), drawRect.bottom()); ++ path.lineTo(drawRect.right(), drawRect.top()); ++ path.lineTo(drawRect.left() + TabBarTab_Radius, drawRect.top()); ++ path.arcTo(QRect(drawRect.left(), drawRect.top(), ++ TabBarTab_Radius * 2, TabBarTab_Radius * 2), 90, 90); ++ } else if (now_index == tab_count - 1) { ++ drawRect.adjust(0, 0, tabOverlap, 0); ++ path.moveTo(drawRect.right(), drawRect.bottom()); ++ path.lineTo(drawRect.right(), drawRect.top() + TabBarTab_Radius); ++ path.arcTo(QRect(drawRect.right() - TabBarTab_Radius * 2, drawRect.top(), ++ TabBarTab_Radius * 2, TabBarTab_Radius * 2), 0, 90); ++ path.lineTo(drawRect.left(), drawRect.top()); ++ path.lineTo(drawRect.left(), drawRect.bottom()); ++ path.lineTo(drawRect.right(), drawRect.bottom()); ++ } else { ++ path.addRect(drawRect); ++ } ++ } ++ } ++ } + } else { + + path.addRect(drawRect); +@@ -5912,7 +6061,7 @@ void UKUIConfigStyle::drawControl(QStyle::ControlElement element, const QStyleOp + painter->restore(); + return; + } +- ++ //绘制进度条内容部分 + case CE_ProgressBarContents: + { + if (const QStyleOptionProgressBar *pb = qstyleoption_cast<const QStyleOptionProgressBar *>(option)) { diff -Nru qt5-ukui-platformtheme-4.1.0.0/debian/patches/0081-Added-translation-using-Weblate-Arabic.patch qt5-ukui-platformtheme-4.1.0.0/debian/patches/0081-Added-translation-using-Weblate-Arabic.patch --- qt5-ukui-platformtheme-4.1.0.0/debian/patches/0081-Added-translation-using-Weblate-Arabic.patch 1970-01-01 08:00:00.000000000 +0800 +++ qt5-ukui-platformtheme-4.1.0.0/debian/patches/0081-Added-translation-using-Weblate-Arabic.patch 2025-02-17 10:28:03.000000000 +0800 @@ -0,0 +1,236 @@ +From: KevinDuan <duankaiwen@kylinos.cn> +Date: Mon, 17 Feb 2025 09:32:54 +0800 +Subject: Added translation using Weblate (Arabic) + +--- + .../translations/qt5-ukui-platformtheme_ar.ts | 221 +++++++++++++++++++++ + 1 file changed, 221 insertions(+) + create mode 100644 qt5-ukui-platformtheme/translations/qt5-ukui-platformtheme_ar.ts + +diff --git a/qt5-ukui-platformtheme/translations/qt5-ukui-platformtheme_ar.ts b/qt5-ukui-platformtheme/translations/qt5-ukui-platformtheme_ar.ts +new file mode 100644 +index 0000000..c608809 +--- /dev/null ++++ b/qt5-ukui-platformtheme/translations/qt5-ukui-platformtheme_ar.ts +@@ -0,0 +1,221 @@ ++<?xml version="1.0" encoding="utf-8"?> ++<!DOCTYPE TS> ++<TS version="2.1" language="ar"> ++<context> ++ <name>MessageBox</name> ++ <message> ++ <location filename="../widget/messagebox/message-box.cpp" line="97"/> ++ <source>Close</source> ++ <translation type="unfinished"></translation> ++ </message> ++</context> ++<context> ++ <name>QApplication</name> ++ <message> ++ <location filename="../widget/messagebox/message-box.h" line="272"/> ++ <source>Executable '%1' requires Qt %2, found Qt %3.</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../widget/messagebox/message-box.h" line="274"/> ++ <source>Incompatible Qt Library Error</source> ++ <translation type="unfinished"></translation> ++ </message> ++</context> ++<context> ++ <name>QDialogButtonBox</name> ++ <message> ++ <location filename="../widget/messagebox/message-box.cpp" line="362"/> ++ <location filename="../widget/messagebox/message-box.cpp" line="1090"/> ++ <source>OK</source> ++ <translation type="unfinished"></translation> ++ </message> ++</context> ++<context> ++ <name>QMessageBox</name> ++ <message> ++ <location filename="../widget/messagebox/message-box.cpp" line="418"/> ++ <location filename="../widget/messagebox/message-box.cpp" line="881"/> ++ <location filename="../widget/messagebox/message-box.cpp" line="1517"/> ++ <source>Show Details...</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../widget/messagebox/message-box.cpp" line="881"/> ++ <location filename="../widget/messagebox/message-box.cpp" line="1517"/> ++ <source>Hide Details...</source> ++ <translation type="unfinished"></translation> ++ </message> ++</context> ++<context> ++ <name>QObject</name> ++ <message> ++ <source>File Name</source> ++ <translation type="vanished">文件名称</translation> ++ </message> ++ <message> ++ <source>Modified Date</source> ++ <translation type="vanished">修改日期</translation> ++ </message> ++ <message> ++ <source>File Type</source> ++ <translation type="vanished">文件类型</translation> ++ </message> ++ <message> ++ <source>File Size</source> ++ <translation type="vanished">文件大小</translation> ++ </message> ++ <message> ++ <source>Original Path</source> ++ <translation type="vanished">原始路径</translation> ++ </message> ++ <message> ++ <source>Descending</source> ++ <translation type="vanished">降序</translation> ++ </message> ++ <message> ++ <source>Ascending</source> ++ <translation type="vanished">升序</translation> ++ </message> ++ <message> ++ <source>Use global sorting</source> ++ <translation type="vanished">使用全局排序</translation> ++ </message> ++ <message> ++ <source>List View</source> ++ <translation type="vanished">列表视图</translation> ++ </message> ++ <message> ++ <source>Icon View</source> ++ <translation type="vanished">图标视图</translation> ++ </message> ++ <message> ++ <location filename="../widget/messagebox/message-box.cpp" line="730"/> ++ <source>Close</source> ++ <translation type="unfinished"></translation> ++ </message> ++</context> ++<context> ++ <name>UKUI::TabWidget::DefaultSlideAnimatorFactory</name> ++ <message> ++ <location filename="../../libqt5-ukui-style/animations/tabwidget/ukui-tabwidget-default-slide-animator-factory.h" line="50"/> ++ <source>Default Slide</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../../libqt5-ukui-style/animations/tabwidget/ukui-tabwidget-default-slide-animator-factory.h" line="51"/> ++ <source>Let tab widget switch with a slide animation.</source> ++ <translation type="unfinished"></translation> ++ </message> ++</context> ++<context> ++ <name>UKUIFileDialog::KyFileDialogHelper</name> ++ <message> ++ <source>Open File</source> ++ <translation type="vanished">打开</translation> ++ </message> ++ <message> ++ <source>Save File</source> ++ <translation type="vanished">保存</translation> ++ </message> ++ <message> ++ <source>All Files (*)</source> ++ <translation type="vanished">所有(*)</translation> ++ </message> ++</context> ++<context> ++ <name>UKUIFileDialog::KyNativeFileDialog</name> ++ <message> ++ <source>Go Back</source> ++ <translation type="vanished">后退</translation> ++ </message> ++ <message> ++ <source>Go Forward</source> ++ <translation type="vanished">前进</translation> ++ </message> ++ <message> ++ <source>Cd Up</source> ++ <translation type="vanished">向上</translation> ++ </message> ++ <message> ++ <source>Search</source> ++ <translation type="vanished">搜索</translation> ++ </message> ++ <message> ++ <source>View Type</source> ++ <translation type="vanished">视图类型</translation> ++ </message> ++ <message> ++ <source>Sort Type</source> ++ <translation type="vanished">排序类型</translation> ++ </message> ++ <message> ++ <source>Maximize</source> ++ <translation type="vanished">最大化</translation> ++ </message> ++ <message> ++ <source>Close</source> ++ <translation type="vanished">关闭</translation> ++ </message> ++ <message> ++ <source>Restore</source> ++ <translation type="vanished">还原</translation> ++ </message> ++ <message> ++ <source>Name</source> ++ <translation type="vanished">文件名</translation> ++ </message> ++ <message> ++ <source>Open</source> ++ <translation type="vanished">打开</translation> ++ </message> ++ <message> ++ <source>Cancel</source> ++ <translation type="vanished">取消</translation> ++ </message> ++ <message> ++ <source>Save as</source> ++ <translation type="vanished">另存为</translation> ++ </message> ++ <message> ++ <source>New Folder</source> ++ <translation type="vanished">新建文件夹</translation> ++ </message> ++ <message> ++ <source>Save</source> ++ <translation type="vanished">保存</translation> ++ </message> ++ <message> ++ <source>Directories</source> ++ <translation type="vanished">目录</translation> ++ </message> ++ <message> ++ <source>Warning</source> ++ <translation type="vanished">警告</translation> ++ </message> ++ <message> ++ <source>exist, are you sure replace?</source> ++ <translation type="vanished">已存在,是否替换?</translation> ++ </message> ++ <message> ++ <source>NewFolder</source> ++ <translation type="vanished">新建文件夹</translation> ++ </message> ++ <message> ++ <source>Undo</source> ++ <translation type="vanished">撤销</translation> ++ </message> ++ <message> ++ <source>Redo</source> ++ <translation type="vanished">重做</translation> ++ </message> ++ <message> ++ <source>warn</source> ++ <translation type="vanished">警告</translation> ++ </message> ++ <message> ++ <source>This operation is not supported.</source> ++ <translation type="vanished">不支持此操作。</translation> ++ </message> ++</context> ++</TS> diff -Nru qt5-ukui-platformtheme-4.1.0.0/debian/patches/0082-Added-translation-using-Weblate-Vietnamese.patch qt5-ukui-platformtheme-4.1.0.0/debian/patches/0082-Added-translation-using-Weblate-Vietnamese.patch --- qt5-ukui-platformtheme-4.1.0.0/debian/patches/0082-Added-translation-using-Weblate-Vietnamese.patch 1970-01-01 08:00:00.000000000 +0800 +++ qt5-ukui-platformtheme-4.1.0.0/debian/patches/0082-Added-translation-using-Weblate-Vietnamese.patch 2025-02-17 10:28:03.000000000 +0800 @@ -0,0 +1,496 @@ +From: KevinDuan <duankaiwen@kylinos.cn> +Date: Mon, 17 Feb 2025 14:58:18 +0800 +Subject: Added translation using Weblate (Vietnamese) + +--- + .../translations/qt5-ukui-filedialog_ar.ts | 252 +++++++++++++++++++++ + .../translations/qt5-ukui-platformtheme_vi.ts | 221 ++++++++++++++++++ + 2 files changed, 473 insertions(+) + create mode 100644 qt5-ukui-filedialog/translations/qt5-ukui-filedialog_ar.ts + create mode 100644 qt5-ukui-platformtheme/translations/qt5-ukui-platformtheme_vi.ts + +diff --git a/qt5-ukui-filedialog/translations/qt5-ukui-filedialog_ar.ts b/qt5-ukui-filedialog/translations/qt5-ukui-filedialog_ar.ts +new file mode 100644 +index 0000000..c55b5a4 +--- /dev/null ++++ b/qt5-ukui-filedialog/translations/qt5-ukui-filedialog_ar.ts +@@ -0,0 +1,252 @@ ++<?xml version="1.0" encoding="utf-8"?> ++<!DOCTYPE TS> ++<TS version="2.1" language="ar"> ++<context> ++ <name>MessageBox</name> ++ <message> ++ <source>Close</source> ++ <translation type="vanished">关闭</translation> ++ </message> ++</context> ++<context> ++ <name>QApplication</name> ++ <message> ++ <source>Executable '%1' requires Qt %2, found Qt %3.</source> ++ <translation type="vanished">可执行文件“%1”需要数量%2,找到数量%3。</translation> ++ </message> ++ <message> ++ <source>Incompatible Qt Library Error</source> ++ <translation type="vanished">不兼容的Qt库错误</translation> ++ </message> ++</context> ++<context> ++ <name>QDialogButtonBox</name> ++ <message> ++ <source>OK</source> ++ <translation type="vanished">确认</translation> ++ </message> ++</context> ++<context> ++ <name>QMessageBox</name> ++ <message> ++ <source>Show Details...</source> ++ <translation type="vanished">显示细节……</translation> ++ </message> ++ <message> ++ <source>Hide Details...</source> ++ <translation type="vanished">隐藏细节……</translation> ++ </message> ++</context> ++<context> ++ <name>QObject</name> ++ <message> ++ <location filename="../ui_kyfiledialog.cpp" line="259"/> ++ <source>File Name</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../ui_kyfiledialog.cpp" line="263"/> ++ <source>Modified Date</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../ui_kyfiledialog.cpp" line="267"/> ++ <source>File Type</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../ui_kyfiledialog.cpp" line="271"/> ++ <source>File Size</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../ui_kyfiledialog.cpp" line="275"/> ++ <source>Original Path</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../ui_kyfiledialog.cpp" line="284"/> ++ <source>Descending</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../ui_kyfiledialog.cpp" line="289"/> ++ <source>Ascending</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../ui_kyfiledialog.cpp" line="295"/> ++ <source>Use global sorting</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../ui_kyfiledialog.cpp" line="315"/> ++ <source>List View</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../ui_kyfiledialog.cpp" line="316"/> ++ <source>Icon View</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <source>Close</source> ++ <translation type="vanished">关闭</translation> ++ </message> ++</context> ++<context> ++ <name>UKUI::TabWidget::DefaultSlideAnimatorFactory</name> ++ <message> ++ <location filename="../../libqt5-ukui-style/animations/tabwidget/ukui-tabwidget-default-slide-animator-factory.h" line="50"/> ++ <source>Default Slide</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../../libqt5-ukui-style/animations/tabwidget/ukui-tabwidget-default-slide-animator-factory.h" line="51"/> ++ <source>Let tab widget switch with a slide animation.</source> ++ <translation type="unfinished"></translation> ++ </message> ++</context> ++<context> ++ <name>UKUIFileDialog::KyFileDialogHelper</name> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="2715"/> ++ <source>Open File</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="2716"/> ++ <source>Save File</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="2729"/> ++ <source>All Files (*)</source> ++ <translation type="unfinished"></translation> ++ </message> ++</context> ++<context> ++ <name>UKUIFileDialog::KyNativeFileDialog</name> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="221"/> ++ <source>Go Back</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="228"/> ++ <source>Go Forward</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="234"/> ++ <source>Cd Up</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="241"/> ++ <source>Search</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="249"/> ++ <source>View Type</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="260"/> ++ <source>Sort Type</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="265"/> ++ <location filename="../kyfiledialog.cpp" line="378"/> ++ <source>Maximize</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="279"/> ++ <source>Close</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="375"/> ++ <source>Restore</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="987"/> ++ <source>Name</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="990"/> ++ <location filename="../kyfiledialog.cpp" line="1578"/> ++ <source>Open</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="991"/> ++ <location filename="../kyfiledialog.cpp" line="1000"/> ++ <source>Cancel</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="995"/> ++ <source>Save as</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="997"/> ++ <source>New Folder</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="999"/> ++ <location filename="../kyfiledialog.cpp" line="1582"/> ++ <source>Save</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="1035"/> ++ <location filename="../kyfiledialog.cpp" line="1036"/> ++ <location filename="../kyfiledialog.cpp" line="1038"/> ++ <source>Directories</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="1227"/> ++ <source>Warning</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="1227"/> ++ <source>exist, are you sure replace?</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="1920"/> ++ <source>NewFolder</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="2208"/> ++ <source>Undo</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="2215"/> ++ <source>Redo</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="2414"/> ++ <source>warn</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="2414"/> ++ <source>This operation is not supported.</source> ++ <translation type="unfinished"></translation> ++ </message> ++</context> ++</TS> +diff --git a/qt5-ukui-platformtheme/translations/qt5-ukui-platformtheme_vi.ts b/qt5-ukui-platformtheme/translations/qt5-ukui-platformtheme_vi.ts +new file mode 100644 +index 0000000..cbbfee4 +--- /dev/null ++++ b/qt5-ukui-platformtheme/translations/qt5-ukui-platformtheme_vi.ts +@@ -0,0 +1,221 @@ ++<?xml version="1.0" encoding="utf-8"?> ++<!DOCTYPE TS> ++<TS version="2.1" language="vi"> ++<context> ++ <name>MessageBox</name> ++ <message> ++ <location filename="../widget/messagebox/message-box.cpp" line="97"/> ++ <source>Close</source> ++ <translation type="unfinished"></translation> ++ </message> ++</context> ++<context> ++ <name>QApplication</name> ++ <message> ++ <location filename="../widget/messagebox/message-box.h" line="272"/> ++ <source>Executable '%1' requires Qt %2, found Qt %3.</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../widget/messagebox/message-box.h" line="274"/> ++ <source>Incompatible Qt Library Error</source> ++ <translation type="unfinished"></translation> ++ </message> ++</context> ++<context> ++ <name>QDialogButtonBox</name> ++ <message> ++ <location filename="../widget/messagebox/message-box.cpp" line="362"/> ++ <location filename="../widget/messagebox/message-box.cpp" line="1090"/> ++ <source>OK</source> ++ <translation type="unfinished"></translation> ++ </message> ++</context> ++<context> ++ <name>QMessageBox</name> ++ <message> ++ <location filename="../widget/messagebox/message-box.cpp" line="418"/> ++ <location filename="../widget/messagebox/message-box.cpp" line="881"/> ++ <location filename="../widget/messagebox/message-box.cpp" line="1517"/> ++ <source>Show Details...</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../widget/messagebox/message-box.cpp" line="881"/> ++ <location filename="../widget/messagebox/message-box.cpp" line="1517"/> ++ <source>Hide Details...</source> ++ <translation type="unfinished"></translation> ++ </message> ++</context> ++<context> ++ <name>QObject</name> ++ <message> ++ <source>File Name</source> ++ <translation type="vanished">文件名称</translation> ++ </message> ++ <message> ++ <source>Modified Date</source> ++ <translation type="vanished">修改日期</translation> ++ </message> ++ <message> ++ <source>File Type</source> ++ <translation type="vanished">文件类型</translation> ++ </message> ++ <message> ++ <source>File Size</source> ++ <translation type="vanished">文件大小</translation> ++ </message> ++ <message> ++ <source>Original Path</source> ++ <translation type="vanished">原始路径</translation> ++ </message> ++ <message> ++ <source>Descending</source> ++ <translation type="vanished">降序</translation> ++ </message> ++ <message> ++ <source>Ascending</source> ++ <translation type="vanished">升序</translation> ++ </message> ++ <message> ++ <source>Use global sorting</source> ++ <translation type="vanished">使用全局排序</translation> ++ </message> ++ <message> ++ <source>List View</source> ++ <translation type="vanished">列表视图</translation> ++ </message> ++ <message> ++ <source>Icon View</source> ++ <translation type="vanished">图标视图</translation> ++ </message> ++ <message> ++ <location filename="../widget/messagebox/message-box.cpp" line="730"/> ++ <source>Close</source> ++ <translation type="unfinished"></translation> ++ </message> ++</context> ++<context> ++ <name>UKUI::TabWidget::DefaultSlideAnimatorFactory</name> ++ <message> ++ <location filename="../../libqt5-ukui-style/animations/tabwidget/ukui-tabwidget-default-slide-animator-factory.h" line="50"/> ++ <source>Default Slide</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../../libqt5-ukui-style/animations/tabwidget/ukui-tabwidget-default-slide-animator-factory.h" line="51"/> ++ <source>Let tab widget switch with a slide animation.</source> ++ <translation type="unfinished"></translation> ++ </message> ++</context> ++<context> ++ <name>UKUIFileDialog::KyFileDialogHelper</name> ++ <message> ++ <source>Open File</source> ++ <translation type="vanished">打开</translation> ++ </message> ++ <message> ++ <source>Save File</source> ++ <translation type="vanished">保存</translation> ++ </message> ++ <message> ++ <source>All Files (*)</source> ++ <translation type="vanished">所有(*)</translation> ++ </message> ++</context> ++<context> ++ <name>UKUIFileDialog::KyNativeFileDialog</name> ++ <message> ++ <source>Go Back</source> ++ <translation type="vanished">后退</translation> ++ </message> ++ <message> ++ <source>Go Forward</source> ++ <translation type="vanished">前进</translation> ++ </message> ++ <message> ++ <source>Cd Up</source> ++ <translation type="vanished">向上</translation> ++ </message> ++ <message> ++ <source>Search</source> ++ <translation type="vanished">搜索</translation> ++ </message> ++ <message> ++ <source>View Type</source> ++ <translation type="vanished">视图类型</translation> ++ </message> ++ <message> ++ <source>Sort Type</source> ++ <translation type="vanished">排序类型</translation> ++ </message> ++ <message> ++ <source>Maximize</source> ++ <translation type="vanished">最大化</translation> ++ </message> ++ <message> ++ <source>Close</source> ++ <translation type="vanished">关闭</translation> ++ </message> ++ <message> ++ <source>Restore</source> ++ <translation type="vanished">还原</translation> ++ </message> ++ <message> ++ <source>Name</source> ++ <translation type="vanished">文件名</translation> ++ </message> ++ <message> ++ <source>Open</source> ++ <translation type="vanished">打开</translation> ++ </message> ++ <message> ++ <source>Cancel</source> ++ <translation type="vanished">取消</translation> ++ </message> ++ <message> ++ <source>Save as</source> ++ <translation type="vanished">另存为</translation> ++ </message> ++ <message> ++ <source>New Folder</source> ++ <translation type="vanished">新建文件夹</translation> ++ </message> ++ <message> ++ <source>Save</source> ++ <translation type="vanished">保存</translation> ++ </message> ++ <message> ++ <source>Directories</source> ++ <translation type="vanished">目录</translation> ++ </message> ++ <message> ++ <source>Warning</source> ++ <translation type="vanished">警告</translation> ++ </message> ++ <message> ++ <source>exist, are you sure replace?</source> ++ <translation type="vanished">已存在,是否替换?</translation> ++ </message> ++ <message> ++ <source>NewFolder</source> ++ <translation type="vanished">新建文件夹</translation> ++ </message> ++ <message> ++ <source>Undo</source> ++ <translation type="vanished">撤销</translation> ++ </message> ++ <message> ++ <source>Redo</source> ++ <translation type="vanished">重做</translation> ++ </message> ++ <message> ++ <source>warn</source> ++ <translation type="vanished">警告</translation> ++ </message> ++ <message> ++ <source>This operation is not supported.</source> ++ <translation type="vanished">不支持此操作。</translation> ++ </message> ++</context> ++</TS> diff -Nru qt5-ukui-platformtheme-4.1.0.0/debian/patches/0083-Update-changelog-2025.02.17-4.1.0.0-ok55.patch qt5-ukui-platformtheme-4.1.0.0/debian/patches/0083-Update-changelog-2025.02.17-4.1.0.0-ok55.patch --- qt5-ukui-platformtheme-4.1.0.0/debian/patches/0083-Update-changelog-2025.02.17-4.1.0.0-ok55.patch 1970-01-01 08:00:00.000000000 +0800 +++ qt5-ukui-platformtheme-4.1.0.0/debian/patches/0083-Update-changelog-2025.02.17-4.1.0.0-ok55.patch 2025-02-17 10:28:03.000000000 +0800 @@ -0,0 +1,24 @@ +From: =?utf-8?b?6LCt6Z2Z?= <tanjing@kylinos.cn> +Date: Mon, 17 Feb 2025 10:33:53 +0800 +Subject: Update changelog 2025.02.17 4.1.0.0-ok55 + +--- + ukui-styles/qt5-config-style-ukui/ukui-config-style.cpp | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/ukui-styles/qt5-config-style-ukui/ukui-config-style.cpp b/ukui-styles/qt5-config-style-ukui/ukui-config-style.cpp +index 202ebfe..69725f9 100644 +--- a/ukui-styles/qt5-config-style-ukui/ukui-config-style.cpp ++++ b/ukui-styles/qt5-config-style-ukui/ukui-config-style.cpp +@@ -3657,8 +3657,10 @@ void UKUIConfigStyle::drawPrimitive(QStyle::PrimitiveElement element, const QSty + painter->save(); + painter->setClipRect(rect); + painter->setRenderHint(QPainter::Antialiasing, Radius != 0); +- if(painter->pen().width() == 1 && Radius != 0) ++ if(option->rect.height() != 0 && painter->pen().width() == 1 && Radius != 0){ + painter->translate(0.5, 0.5); ++ rect.adjust(0, 0, -1, -1); ++ } + painter->setPen(option->palette.color(QPalette::Active, QPalette::Highlight)); + painter->setBrush(Qt::NoBrush); + if (option->rect.height() == 0) diff -Nru qt5-ukui-platformtheme-4.1.0.0/debian/patches/0084-Added-translation-using-Weblate-Vietnamese.patch qt5-ukui-platformtheme-4.1.0.0/debian/patches/0084-Added-translation-using-Weblate-Vietnamese.patch --- qt5-ukui-platformtheme-4.1.0.0/debian/patches/0084-Added-translation-using-Weblate-Vietnamese.patch 1970-01-01 08:00:00.000000000 +0800 +++ qt5-ukui-platformtheme-4.1.0.0/debian/patches/0084-Added-translation-using-Weblate-Vietnamese.patch 2025-02-17 10:28:03.000000000 +0800 @@ -0,0 +1,267 @@ +From: KevinDuan <duankaiwen@kylinos.cn> +Date: Mon, 17 Feb 2025 14:58:21 +0800 +Subject: Added translation using Weblate (Vietnamese) + +--- + .../translations/qt5-ukui-filedialog_vi.ts | 252 +++++++++++++++++++++ + 1 file changed, 252 insertions(+) + create mode 100644 qt5-ukui-filedialog/translations/qt5-ukui-filedialog_vi.ts + +diff --git a/qt5-ukui-filedialog/translations/qt5-ukui-filedialog_vi.ts b/qt5-ukui-filedialog/translations/qt5-ukui-filedialog_vi.ts +new file mode 100644 +index 0000000..7938775 +--- /dev/null ++++ b/qt5-ukui-filedialog/translations/qt5-ukui-filedialog_vi.ts +@@ -0,0 +1,252 @@ ++<?xml version="1.0" encoding="utf-8"?> ++<!DOCTYPE TS> ++<TS version="2.1" language="vi"> ++<context> ++ <name>MessageBox</name> ++ <message> ++ <source>Close</source> ++ <translation type="vanished">关闭</translation> ++ </message> ++</context> ++<context> ++ <name>QApplication</name> ++ <message> ++ <source>Executable '%1' requires Qt %2, found Qt %3.</source> ++ <translation type="vanished">可执行文件“%1”需要数量%2,找到数量%3。</translation> ++ </message> ++ <message> ++ <source>Incompatible Qt Library Error</source> ++ <translation type="vanished">不兼容的Qt库错误</translation> ++ </message> ++</context> ++<context> ++ <name>QDialogButtonBox</name> ++ <message> ++ <source>OK</source> ++ <translation type="vanished">确认</translation> ++ </message> ++</context> ++<context> ++ <name>QMessageBox</name> ++ <message> ++ <source>Show Details...</source> ++ <translation type="vanished">显示细节……</translation> ++ </message> ++ <message> ++ <source>Hide Details...</source> ++ <translation type="vanished">隐藏细节……</translation> ++ </message> ++</context> ++<context> ++ <name>QObject</name> ++ <message> ++ <location filename="../ui_kyfiledialog.cpp" line="259"/> ++ <source>File Name</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../ui_kyfiledialog.cpp" line="263"/> ++ <source>Modified Date</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../ui_kyfiledialog.cpp" line="267"/> ++ <source>File Type</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../ui_kyfiledialog.cpp" line="271"/> ++ <source>File Size</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../ui_kyfiledialog.cpp" line="275"/> ++ <source>Original Path</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../ui_kyfiledialog.cpp" line="284"/> ++ <source>Descending</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../ui_kyfiledialog.cpp" line="289"/> ++ <source>Ascending</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../ui_kyfiledialog.cpp" line="295"/> ++ <source>Use global sorting</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../ui_kyfiledialog.cpp" line="315"/> ++ <source>List View</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../ui_kyfiledialog.cpp" line="316"/> ++ <source>Icon View</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <source>Close</source> ++ <translation type="vanished">关闭</translation> ++ </message> ++</context> ++<context> ++ <name>UKUI::TabWidget::DefaultSlideAnimatorFactory</name> ++ <message> ++ <location filename="../../libqt5-ukui-style/animations/tabwidget/ukui-tabwidget-default-slide-animator-factory.h" line="50"/> ++ <source>Default Slide</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../../libqt5-ukui-style/animations/tabwidget/ukui-tabwidget-default-slide-animator-factory.h" line="51"/> ++ <source>Let tab widget switch with a slide animation.</source> ++ <translation type="unfinished"></translation> ++ </message> ++</context> ++<context> ++ <name>UKUIFileDialog::KyFileDialogHelper</name> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="2715"/> ++ <source>Open File</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="2716"/> ++ <source>Save File</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="2729"/> ++ <source>All Files (*)</source> ++ <translation type="unfinished"></translation> ++ </message> ++</context> ++<context> ++ <name>UKUIFileDialog::KyNativeFileDialog</name> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="221"/> ++ <source>Go Back</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="228"/> ++ <source>Go Forward</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="234"/> ++ <source>Cd Up</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="241"/> ++ <source>Search</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="249"/> ++ <source>View Type</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="260"/> ++ <source>Sort Type</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="265"/> ++ <location filename="../kyfiledialog.cpp" line="378"/> ++ <source>Maximize</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="279"/> ++ <source>Close</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="375"/> ++ <source>Restore</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="987"/> ++ <source>Name</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="990"/> ++ <location filename="../kyfiledialog.cpp" line="1578"/> ++ <source>Open</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="991"/> ++ <location filename="../kyfiledialog.cpp" line="1000"/> ++ <source>Cancel</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="995"/> ++ <source>Save as</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="997"/> ++ <source>New Folder</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="999"/> ++ <location filename="../kyfiledialog.cpp" line="1582"/> ++ <source>Save</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="1035"/> ++ <location filename="../kyfiledialog.cpp" line="1036"/> ++ <location filename="../kyfiledialog.cpp" line="1038"/> ++ <source>Directories</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="1227"/> ++ <source>Warning</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="1227"/> ++ <source>exist, are you sure replace?</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="1920"/> ++ <source>NewFolder</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="2208"/> ++ <source>Undo</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="2215"/> ++ <source>Redo</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="2414"/> ++ <source>warn</source> ++ <translation type="unfinished"></translation> ++ </message> ++ <message> ++ <location filename="../kyfiledialog.cpp" line="2414"/> ++ <source>This operation is not supported.</source> ++ <translation type="unfinished"></translation> ++ </message> ++</context> ++</TS> diff -Nru qt5-ukui-platformtheme-4.1.0.0/debian/patches/0085-Translated-using-Weblate-Vietnamese.patch qt5-ukui-platformtheme-4.1.0.0/debian/patches/0085-Translated-using-Weblate-Vietnamese.patch --- qt5-ukui-platformtheme-4.1.0.0/debian/patches/0085-Translated-using-Weblate-Vietnamese.patch 1970-01-01 08:00:00.000000000 +0800 +++ qt5-ukui-platformtheme-4.1.0.0/debian/patches/0085-Translated-using-Weblate-Vietnamese.patch 2025-02-17 10:28:03.000000000 +0800 @@ -0,0 +1,167 @@ +From: KevinDuan <duankaiwen@kylinos.cn> +Date: Wed, 19 Feb 2025 08:55:29 +0000 +Subject: Translated using Weblate (Vietnamese) + +Currently translated at 100.0% (9 of 9 strings) + +Translation: openkylin-nile-new/qt5-ukui-platformtheme-qt5 +Translate-URL: http://weblate.openkylin.top/projects/openkylin-nile-new/qt5-ukui-platformtheme-qt5/vi/ +--- + .../translations/qt5-ukui-platformtheme_ar.ts | 18 +++++++++--------- + .../translations/qt5-ukui-platformtheme_vi.ts | 18 +++++++++--------- + 2 files changed, 18 insertions(+), 18 deletions(-) + +diff --git a/qt5-ukui-platformtheme/translations/qt5-ukui-platformtheme_ar.ts b/qt5-ukui-platformtheme/translations/qt5-ukui-platformtheme_ar.ts +index c608809..bcf4888 100644 +--- a/qt5-ukui-platformtheme/translations/qt5-ukui-platformtheme_ar.ts ++++ b/qt5-ukui-platformtheme/translations/qt5-ukui-platformtheme_ar.ts +@@ -6,7 +6,7 @@ + <message> + <location filename="../widget/messagebox/message-box.cpp" line="97"/> + <source>Close</source> +- <translation type="unfinished"></translation> ++ <translation>غلق</translation> + </message> + </context> + <context> +@@ -14,12 +14,12 @@ + <message> + <location filename="../widget/messagebox/message-box.h" line="272"/> + <source>Executable '%1' requires Qt %2, found Qt %3.</source> +- <translation type="unfinished"></translation> ++ <translation>يتطلب الملف القابل للتنفيذ '٪1' Qt٪2، تم العثور على Qt٪3.</translation> + </message> + <message> + <location filename="../widget/messagebox/message-box.h" line="274"/> + <source>Incompatible Qt Library Error</source> +- <translation type="unfinished"></translation> ++ <translation>خطأ مكتبة Qt غير متوافق</translation> + </message> + </context> + <context> +@@ -28,7 +28,7 @@ + <location filename="../widget/messagebox/message-box.cpp" line="362"/> + <location filename="../widget/messagebox/message-box.cpp" line="1090"/> + <source>OK</source> +- <translation type="unfinished"></translation> ++ <translation>موافق</translation> + </message> + </context> + <context> +@@ -38,13 +38,13 @@ + <location filename="../widget/messagebox/message-box.cpp" line="881"/> + <location filename="../widget/messagebox/message-box.cpp" line="1517"/> + <source>Show Details...</source> +- <translation type="unfinished"></translation> ++ <translation>عرض التفاصيل...</translation> + </message> + <message> + <location filename="../widget/messagebox/message-box.cpp" line="881"/> + <location filename="../widget/messagebox/message-box.cpp" line="1517"/> + <source>Hide Details...</source> +- <translation type="unfinished"></translation> ++ <translation>إخفاء التفاصيل...</translation> + </message> + </context> + <context> +@@ -92,7 +92,7 @@ + <message> + <location filename="../widget/messagebox/message-box.cpp" line="730"/> + <source>Close</source> +- <translation type="unfinished"></translation> ++ <translation>غلق</translation> + </message> + </context> + <context> +@@ -100,12 +100,12 @@ + <message> + <location filename="../../libqt5-ukui-style/animations/tabwidget/ukui-tabwidget-default-slide-animator-factory.h" line="50"/> + <source>Default Slide</source> +- <translation type="unfinished"></translation> ++ <translation>الشريحة الافتراضية</translation> + </message> + <message> + <location filename="../../libqt5-ukui-style/animations/tabwidget/ukui-tabwidget-default-slide-animator-factory.h" line="51"/> + <source>Let tab widget switch with a slide animation.</source> +- <translation type="unfinished"></translation> ++ <translation>اسمح لعنصر واجهة مستخدم علامة التبويب بالتبديل باستخدام حركة شريحة.</translation> + </message> + </context> + <context> +diff --git a/qt5-ukui-platformtheme/translations/qt5-ukui-platformtheme_vi.ts b/qt5-ukui-platformtheme/translations/qt5-ukui-platformtheme_vi.ts +index cbbfee4..8080388 100644 +--- a/qt5-ukui-platformtheme/translations/qt5-ukui-platformtheme_vi.ts ++++ b/qt5-ukui-platformtheme/translations/qt5-ukui-platformtheme_vi.ts +@@ -6,7 +6,7 @@ + <message> + <location filename="../widget/messagebox/message-box.cpp" line="97"/> + <source>Close</source> +- <translation type="unfinished"></translation> ++ <translation>Đóng</translation> + </message> + </context> + <context> +@@ -14,12 +14,12 @@ + <message> + <location filename="../widget/messagebox/message-box.h" line="272"/> + <source>Executable '%1' requires Qt %2, found Qt %3.</source> +- <translation type="unfinished"></translation> ++ <translation>Tệp thực thi '%1' yêu cầu Qt %2, tìm thấy Qt %3.</translation> + </message> + <message> + <location filename="../widget/messagebox/message-box.h" line="274"/> + <source>Incompatible Qt Library Error</source> +- <translation type="unfinished"></translation> ++ <translation>Lỗi thư viện Qt không tương thích</translation> + </message> + </context> + <context> +@@ -28,7 +28,7 @@ + <location filename="../widget/messagebox/message-box.cpp" line="362"/> + <location filename="../widget/messagebox/message-box.cpp" line="1090"/> + <source>OK</source> +- <translation type="unfinished"></translation> ++ <translation>OK</translation> + </message> + </context> + <context> +@@ -38,13 +38,13 @@ + <location filename="../widget/messagebox/message-box.cpp" line="881"/> + <location filename="../widget/messagebox/message-box.cpp" line="1517"/> + <source>Show Details...</source> +- <translation type="unfinished"></translation> ++ <translation>Hiển thị chi tiết...</translation> + </message> + <message> + <location filename="../widget/messagebox/message-box.cpp" line="881"/> + <location filename="../widget/messagebox/message-box.cpp" line="1517"/> + <source>Hide Details...</source> +- <translation type="unfinished"></translation> ++ <translation>Ẩn chi tiết...</translation> + </message> + </context> + <context> +@@ -92,7 +92,7 @@ + <message> + <location filename="../widget/messagebox/message-box.cpp" line="730"/> + <source>Close</source> +- <translation type="unfinished"></translation> ++ <translation>Đóng</translation> + </message> + </context> + <context> +@@ -100,12 +100,12 @@ + <message> + <location filename="../../libqt5-ukui-style/animations/tabwidget/ukui-tabwidget-default-slide-animator-factory.h" line="50"/> + <source>Default Slide</source> +- <translation type="unfinished"></translation> ++ <translation>Trang trình bày mặc định</translation> + </message> + <message> + <location filename="../../libqt5-ukui-style/animations/tabwidget/ukui-tabwidget-default-slide-animator-factory.h" line="51"/> + <source>Let tab widget switch with a slide animation.</source> +- <translation type="unfinished"></translation> ++ <translation>Hãy để tiện ích tab chuyển đổi với hoạt ảnh trang chiếu.</translation> + </message> + </context> + <context> diff -Nru qt5-ukui-platformtheme-4.1.0.0/debian/patches/0086-Fix-display-issues-on-the-kylin-nm-page-and-ukui-vol.patch qt5-ukui-platformtheme-4.1.0.0/debian/patches/0086-Fix-display-issues-on-the-kylin-nm-page-and-ukui-vol.patch --- qt5-ukui-platformtheme-4.1.0.0/debian/patches/0086-Fix-display-issues-on-the-kylin-nm-page-and-ukui-vol.patch 1970-01-01 08:00:00.000000000 +0800 +++ qt5-ukui-platformtheme-4.1.0.0/debian/patches/0086-Fix-display-issues-on-the-kylin-nm-page-and-ukui-vol.patch 2025-02-17 10:28:03.000000000 +0800 @@ -0,0 +1,567 @@ +From: wuruiwen <wuruiwen@kylinos.cn> +Date: Wed, 26 Feb 2025 14:34:00 +0800 +Subject: Fix display issues on the kylin-nm page and + ukui-volume-control-applet-qt page. + +--- + libqt5-ukui-style/settings/black-list.h | 7 ++ + .../translations/qt5-ukui-filedialog_ar.ts | 76 +++++++++++----------- + .../translations/qt5-ukui-filedialog_vi.ts | 76 +++++++++++----------- + .../qt5-config-style-ukui/ukui-config-style.cpp | 20 +++--- + 4 files changed, 94 insertions(+), 85 deletions(-) + +diff --git a/libqt5-ukui-style/settings/black-list.h b/libqt5-ukui-style/settings/black-list.h +index e126fe7..0adc946 100644 +--- a/libqt5-ukui-style/settings/black-list.h ++++ b/libqt5-ukui-style/settings/black-list.h +@@ -122,4 +122,11 @@ static const QStringList windowManageBlackList() { + return l; + } + ++static const QStringList drawTabBarCurveBorderList() { ++ QStringList l; ++ l << "kylin-nm"; ++ l << "ukui-volume-control-applet-qt"; ++ return l; ++} ++ + #endif // BLACKLIST_H +diff --git a/qt5-ukui-filedialog/translations/qt5-ukui-filedialog_ar.ts b/qt5-ukui-filedialog/translations/qt5-ukui-filedialog_ar.ts +index c55b5a4..89b33b5 100644 +--- a/qt5-ukui-filedialog/translations/qt5-ukui-filedialog_ar.ts ++++ b/qt5-ukui-filedialog/translations/qt5-ukui-filedialog_ar.ts +@@ -42,52 +42,52 @@ + <message> + <location filename="../ui_kyfiledialog.cpp" line="259"/> + <source>File Name</source> +- <translation type="unfinished"></translation> ++ <translation>اسم الملف</translation> + </message> + <message> + <location filename="../ui_kyfiledialog.cpp" line="263"/> + <source>Modified Date</source> +- <translation type="unfinished"></translation> ++ <translation>تاريخ التعديل</translation> + </message> + <message> + <location filename="../ui_kyfiledialog.cpp" line="267"/> + <source>File Type</source> +- <translation type="unfinished"></translation> ++ <translation>نوع الملف</translation> + </message> + <message> + <location filename="../ui_kyfiledialog.cpp" line="271"/> + <source>File Size</source> +- <translation type="unfinished"></translation> ++ <translation>حجم الملف</translation> + </message> + <message> + <location filename="../ui_kyfiledialog.cpp" line="275"/> + <source>Original Path</source> +- <translation type="unfinished"></translation> ++ <translation>المسار الأصلي</translation> + </message> + <message> + <location filename="../ui_kyfiledialog.cpp" line="284"/> + <source>Descending</source> +- <translation type="unfinished"></translation> ++ <translation>تنازلي</translation> + </message> + <message> + <location filename="../ui_kyfiledialog.cpp" line="289"/> + <source>Ascending</source> +- <translation type="unfinished"></translation> ++ <translation>تصاعدي</translation> + </message> + <message> + <location filename="../ui_kyfiledialog.cpp" line="295"/> + <source>Use global sorting</source> +- <translation type="unfinished"></translation> ++ <translation>استخدام الفرز العمومي</translation> + </message> + <message> + <location filename="../ui_kyfiledialog.cpp" line="315"/> + <source>List View</source> +- <translation type="unfinished"></translation> ++ <translation>عرض القائمة</translation> + </message> + <message> + <location filename="../ui_kyfiledialog.cpp" line="316"/> + <source>Icon View</source> +- <translation type="unfinished"></translation> ++ <translation>عرض الأيقونة</translation> + </message> + <message> + <source>Close</source> +@@ -99,12 +99,12 @@ + <message> + <location filename="../../libqt5-ukui-style/animations/tabwidget/ukui-tabwidget-default-slide-animator-factory.h" line="50"/> + <source>Default Slide</source> +- <translation type="unfinished"></translation> ++ <translation>الشريحة الافتراضية</translation> + </message> + <message> + <location filename="../../libqt5-ukui-style/animations/tabwidget/ukui-tabwidget-default-slide-animator-factory.h" line="51"/> + <source>Let tab widget switch with a slide animation.</source> +- <translation type="unfinished"></translation> ++ <translation>اسمح لعنصر واجهة مستخدم علامة التبويب بالتبديل باستخدام حركة شريحة.</translation> + </message> + </context> + <context> +@@ -112,17 +112,17 @@ + <message> + <location filename="../kyfiledialog.cpp" line="2715"/> + <source>Open File</source> +- <translation type="unfinished"></translation> ++ <translation>افتح ملف</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="2716"/> + <source>Save File</source> +- <translation type="unfinished"></translation> ++ <translation>حفظ الملف</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="2729"/> + <source>All Files (*)</source> +- <translation type="unfinished"></translation> ++ <translation>جميع الملفات (*)</translation> + </message> + </context> + <context> +@@ -130,123 +130,123 @@ + <message> + <location filename="../kyfiledialog.cpp" line="221"/> + <source>Go Back</source> +- <translation type="unfinished"></translation> ++ <translation>الرجوع للخلف</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="228"/> + <source>Go Forward</source> +- <translation type="unfinished"></translation> ++ <translation>المضي قدما</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="234"/> + <source>Cd Up</source> +- <translation type="unfinished"></translation> ++ <translation>القرص المضغوط</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="241"/> + <source>Search</source> +- <translation type="unfinished"></translation> ++ <translation>بحث</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="249"/> + <source>View Type</source> +- <translation type="unfinished"></translation> ++ <translation>نوع العرض</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="260"/> + <source>Sort Type</source> +- <translation type="unfinished"></translation> ++ <translation>نوع الفرز</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="265"/> + <location filename="../kyfiledialog.cpp" line="378"/> + <source>Maximize</source> +- <translation type="unfinished"></translation> ++ <translation>تعظيم</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="279"/> + <source>Close</source> +- <translation type="unfinished"></translation> ++ <translation>غلق</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="375"/> + <source>Restore</source> +- <translation type="unfinished"></translation> ++ <translation>يستعيد</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="987"/> + <source>Name</source> +- <translation type="unfinished"></translation> ++ <translation>اسم</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="990"/> + <location filename="../kyfiledialog.cpp" line="1578"/> + <source>Open</source> +- <translation type="unfinished"></translation> ++ <translation>مفتوح</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="991"/> + <location filename="../kyfiledialog.cpp" line="1000"/> + <source>Cancel</source> +- <translation type="unfinished"></translation> ++ <translation>إلغاء الأمر</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="995"/> + <source>Save as</source> +- <translation type="unfinished"></translation> ++ <translation>حفظ باسم</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="997"/> + <source>New Folder</source> +- <translation type="unfinished"></translation> ++ <translation>مجلد جديد</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="999"/> + <location filename="../kyfiledialog.cpp" line="1582"/> + <source>Save</source> +- <translation type="unfinished"></translation> ++ <translation>أنقذ</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="1035"/> + <location filename="../kyfiledialog.cpp" line="1036"/> + <location filename="../kyfiledialog.cpp" line="1038"/> + <source>Directories</source> +- <translation type="unfinished"></translation> ++ <translation>الدلائل</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="1227"/> + <source>Warning</source> +- <translation type="unfinished"></translation> ++ <translation>تحذير</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="1227"/> + <source>exist, are you sure replace?</source> +- <translation type="unfinished"></translation> ++ <translation>موجودة ، هل أنت متأكد من استبدالها؟</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="1920"/> + <source>NewFolder</source> +- <translation type="unfinished"></translation> ++ <translation>NewFolder</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="2208"/> + <source>Undo</source> +- <translation type="unfinished"></translation> ++ <translation>تراجع</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="2215"/> + <source>Redo</source> +- <translation type="unfinished"></translation> ++ <translation>اعاده</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="2414"/> + <source>warn</source> +- <translation type="unfinished"></translation> ++ <translation>حذر</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="2414"/> + <source>This operation is not supported.</source> +- <translation type="unfinished"></translation> ++ <translation>هذه العملية غير مدعومة.</translation> + </message> + </context> + </TS> +diff --git a/qt5-ukui-filedialog/translations/qt5-ukui-filedialog_vi.ts b/qt5-ukui-filedialog/translations/qt5-ukui-filedialog_vi.ts +index 7938775..51be615 100644 +--- a/qt5-ukui-filedialog/translations/qt5-ukui-filedialog_vi.ts ++++ b/qt5-ukui-filedialog/translations/qt5-ukui-filedialog_vi.ts +@@ -42,52 +42,52 @@ + <message> + <location filename="../ui_kyfiledialog.cpp" line="259"/> + <source>File Name</source> +- <translation type="unfinished"></translation> ++ <translation>Tên tập tin</translation> + </message> + <message> + <location filename="../ui_kyfiledialog.cpp" line="263"/> + <source>Modified Date</source> +- <translation type="unfinished"></translation> ++ <translation>Ngày sửa đổi</translation> + </message> + <message> + <location filename="../ui_kyfiledialog.cpp" line="267"/> + <source>File Type</source> +- <translation type="unfinished"></translation> ++ <translation>Loại tệp</translation> + </message> + <message> + <location filename="../ui_kyfiledialog.cpp" line="271"/> + <source>File Size</source> +- <translation type="unfinished"></translation> ++ <translation>Kích thước tệp</translation> + </message> + <message> + <location filename="../ui_kyfiledialog.cpp" line="275"/> + <source>Original Path</source> +- <translation type="unfinished"></translation> ++ <translation>Đường dẫn ban đầu</translation> + </message> + <message> + <location filename="../ui_kyfiledialog.cpp" line="284"/> + <source>Descending</source> +- <translation type="unfinished"></translation> ++ <translation>Giảm dần</translation> + </message> + <message> + <location filename="../ui_kyfiledialog.cpp" line="289"/> + <source>Ascending</source> +- <translation type="unfinished"></translation> ++ <translation>Tăng dần</translation> + </message> + <message> + <location filename="../ui_kyfiledialog.cpp" line="295"/> + <source>Use global sorting</source> +- <translation type="unfinished"></translation> ++ <translation>Sử dụng sắp xếp toàn cầu</translation> + </message> + <message> + <location filename="../ui_kyfiledialog.cpp" line="315"/> + <source>List View</source> +- <translation type="unfinished"></translation> ++ <translation>Chế độ xem danh sách</translation> + </message> + <message> + <location filename="../ui_kyfiledialog.cpp" line="316"/> + <source>Icon View</source> +- <translation type="unfinished"></translation> ++ <translation>Chế độ xem biểu tượng</translation> + </message> + <message> + <source>Close</source> +@@ -99,12 +99,12 @@ + <message> + <location filename="../../libqt5-ukui-style/animations/tabwidget/ukui-tabwidget-default-slide-animator-factory.h" line="50"/> + <source>Default Slide</source> +- <translation type="unfinished"></translation> ++ <translation>Trang trình bày mặc định</translation> + </message> + <message> + <location filename="../../libqt5-ukui-style/animations/tabwidget/ukui-tabwidget-default-slide-animator-factory.h" line="51"/> + <source>Let tab widget switch with a slide animation.</source> +- <translation type="unfinished"></translation> ++ <translation>Hãy để tiện ích tab chuyển đổi với hoạt ảnh trang chiếu.</translation> + </message> + </context> + <context> +@@ -112,17 +112,17 @@ + <message> + <location filename="../kyfiledialog.cpp" line="2715"/> + <source>Open File</source> +- <translation type="unfinished"></translation> ++ <translation>Mở tập tin</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="2716"/> + <source>Save File</source> +- <translation type="unfinished"></translation> ++ <translation>Lưu tập tin</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="2729"/> + <source>All Files (*)</source> +- <translation type="unfinished"></translation> ++ <translation>Tất cả các tệp (*)</translation> + </message> + </context> + <context> +@@ -130,123 +130,123 @@ + <message> + <location filename="../kyfiledialog.cpp" line="221"/> + <source>Go Back</source> +- <translation type="unfinished"></translation> ++ <translation>Quay lại</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="228"/> + <source>Go Forward</source> +- <translation type="unfinished"></translation> ++ <translation>Tiếp tục</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="234"/> + <source>Cd Up</source> +- <translation type="unfinished"></translation> ++ <translation>Cd Up</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="241"/> + <source>Search</source> +- <translation type="unfinished"></translation> ++ <translation>Tìm kiếm</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="249"/> + <source>View Type</source> +- <translation type="unfinished"></translation> ++ <translation>Loại xem</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="260"/> + <source>Sort Type</source> +- <translation type="unfinished"></translation> ++ <translation>Loại sắp xếp</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="265"/> + <location filename="../kyfiledialog.cpp" line="378"/> + <source>Maximize</source> +- <translation type="unfinished"></translation> ++ <translation>Tối đa hóa</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="279"/> + <source>Close</source> +- <translation type="unfinished"></translation> ++ <translation>Đóng</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="375"/> + <source>Restore</source> +- <translation type="unfinished"></translation> ++ <translation>Khôi phục</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="987"/> + <source>Name</source> +- <translation type="unfinished"></translation> ++ <translation>Tên</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="990"/> + <location filename="../kyfiledialog.cpp" line="1578"/> + <source>Open</source> +- <translation type="unfinished"></translation> ++ <translation>Mở</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="991"/> + <location filename="../kyfiledialog.cpp" line="1000"/> + <source>Cancel</source> +- <translation type="unfinished"></translation> ++ <translation>Hủy</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="995"/> + <source>Save as</source> +- <translation type="unfinished"></translation> ++ <translation>Lưu dưới dạng</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="997"/> + <source>New Folder</source> +- <translation type="unfinished"></translation> ++ <translation>Thư mục mới</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="999"/> + <location filename="../kyfiledialog.cpp" line="1582"/> + <source>Save</source> +- <translation type="unfinished"></translation> ++ <translation>Cứu</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="1035"/> + <location filename="../kyfiledialog.cpp" line="1036"/> + <location filename="../kyfiledialog.cpp" line="1038"/> + <source>Directories</source> +- <translation type="unfinished"></translation> ++ <translation>Thư mục</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="1227"/> + <source>Warning</source> +- <translation type="unfinished"></translation> ++ <translation>Cảnh báo</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="1227"/> + <source>exist, are you sure replace?</source> +- <translation type="unfinished"></translation> ++ <translation>tồn tại, bạn có chắc chắn thay thế không?</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="1920"/> + <source>NewFolder</source> +- <translation type="unfinished"></translation> ++ <translation>Thư mục mới</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="2208"/> + <source>Undo</source> +- <translation type="unfinished"></translation> ++ <translation>Hoàn tác</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="2215"/> + <source>Redo</source> +- <translation type="unfinished"></translation> ++ <translation>Redo</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="2414"/> + <source>warn</source> +- <translation type="unfinished"></translation> ++ <translation>cảnh báo</translation> + </message> + <message> + <location filename="../kyfiledialog.cpp" line="2414"/> + <source>This operation is not supported.</source> +- <translation type="unfinished"></translation> ++ <translation>Hoạt động này không được hỗ trợ.</translation> + </message> + </context> + </TS> +diff --git a/ukui-styles/qt5-config-style-ukui/ukui-config-style.cpp b/ukui-styles/qt5-config-style-ukui/ukui-config-style.cpp +index 69725f9..da7e132 100644 +--- a/ukui-styles/qt5-config-style-ukui/ukui-config-style.cpp ++++ b/ukui-styles/qt5-config-style-ukui/ukui-config-style.cpp +@@ -5277,7 +5277,7 @@ void UKUIConfigStyle::drawControl(QStyle::ControlElement element, const QStyleOp + int now_index = tabbar->tabAt(QPoint(drawRect.x(),drawRect.y())); + int tab_count = tabbar->count(); + +- if (qAppName() == "kylin-nm" || qAppName() == "ukui-volume-control-applet-qt") { //网络页和声音页 ++ if (drawTabBarCurveBorderList().contains(qAppName())) {//网络页和声音页,特殊处理, kylin-nm" "ukui-volume-control-applet-qt" + drawRect.adjust(0, 0, tabOverlap, 0); + if (now_index == 0) { + if (selected) { +@@ -5455,15 +5455,17 @@ void UKUIConfigStyle::drawControl(QStyle::ControlElement element, const QStyleOp + } + painter->drawPath(path); + painter->restore(); +- painter->save(); +- painter->setPen(penWidth > 0 ? pen : Qt::NoPen); +- painter->setBrush(Qt::NoBrush); +- painter->setRenderHint(QPainter::Antialiasing, true); +-// if(painter->pen().width() == 1) +-// painter->translate(0.5, 0.5); +- painter->drawRoundedRect(drawRect.adjusted(penWidth/2, penWidth/2, -1 * penWidth/2, -1 * penWidth), radius, radius); +- painter->restore(); + ++ if (!drawTabBarCurveBorderList().contains(qAppName())) { ++ painter->save(); ++ painter->setPen(penWidth > 0 ? pen : Qt::NoPen); ++ painter->setBrush(Qt::NoBrush); ++ painter->setRenderHint(QPainter::Antialiasing, true); ++ // if(painter->pen().width() == 1) ++ // painter->translate(0.5, 0.5); ++ painter->drawRoundedRect(drawRect.adjusted(penWidth/2, penWidth/2, -1 * penWidth/2, -1 * penWidth), radius, radius); ++ painter->restore(); ++ } + return; + } + break; diff -Nru qt5-ukui-platformtheme-4.1.0.0/debian/patches/series qt5-ukui-platformtheme-4.1.0.0/debian/patches/series --- qt5-ukui-platformtheme-4.1.0.0/debian/patches/series 2024-11-08 09:49:00.000000000 +0800 +++ qt5-ukui-platformtheme-4.1.0.0/debian/patches/series 2025-02-17 10:28:03.000000000 +0800 @@ -74,3 +74,13 @@ 0074-Translated-using-Weblate-Uyghur.patch 0075-Translated-using-Weblate-Uyghur.patch 0076-Update-changelog-2024.11.08-4.1.0.0-ok53.patch +0077-.patch +0078-pc.patch +0079-Translated-using-Weblate-Vietnamese.patch +0080-BUG-IAY3M0-fix-the-abnormal-hover-effect-of-the-ukui.patch +0081-Added-translation-using-Weblate-Arabic.patch +0082-Added-translation-using-Weblate-Vietnamese.patch +0083-Update-changelog-2025.02.17-4.1.0.0-ok55.patch +0084-Added-translation-using-Weblate-Vietnamese.patch +0085-Translated-using-Weblate-Vietnamese.patch +0086-Fix-display-issues-on-the-kylin-nm-page-and-ukui-vol.patch