From c4ebe15b7945c6fdc7ee95a3a29c04b28cb7be02 Mon Sep 17 00:00:00 2001
From: gfdgd_xi <3025613752@qq.com>
Date: Sun, 12 May 2024 10:53:52 +0800
Subject: [PATCH] =?UTF-8?q?=E6=94=AF=E6=8C=81=E6=98=BE=E7=A4=BA=E6=9C=AC?=
 =?UTF-8?q?=E4=BD=93?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 aboutwindow.cpp       |  2 +-
 data/new/zh_CN.html   |  9 +++++++--
 kernelinformation.cpp | 25 ++++++++++++++++---------
 3 files changed, 24 insertions(+), 12 deletions(-)

diff --git a/aboutwindow.cpp b/aboutwindow.cpp
index ad6724d..456ac1b 100644
--- a/aboutwindow.cpp
+++ b/aboutwindow.cpp
@@ -17,7 +17,7 @@ AboutWindow::AboutWindow(QWidget *parent) :
     info += "<pre>";
     info += tr("A kernel manager allows users to install or remove kernels easily.") + "\n\n";
     info += "<b>" + tr("Warning: You may damage your system unless you know what you will do!") + "</b>\n";
-    info += "Built Time: " + QString(__DATE__) + " " + __TIME__;
+    info += tr("Built Time: ") + QString(__DATE__) + " " + __TIME__;
     info += "</pre>";
     info += "<hr/>";
     info += ProgramInfo::updateInfo();
diff --git a/data/new/zh_CN.html b/data/new/zh_CN.html
index b28f22c..119207d 100644
--- a/data/new/zh_CN.html
+++ b/data/new/zh_CN.html
@@ -1,2 +1,7 @@
-<h1>更新内容</h1>
-<p>测试</p>
\ No newline at end of file
+<h1>1.1.0 更新内容</h1>
+<pre>
+<b>※1、支持从 apt 源读取内核数据并显示安装
+※2、支持只显示与当前系统相同架构的内核
+</b>
+3、优化表格显示
+</pre>
\ No newline at end of file
diff --git a/kernelinformation.cpp b/kernelinformation.cpp
index 359c603..0819684 100644
--- a/kernelinformation.cpp
+++ b/kernelinformation.cpp
@@ -51,9 +51,15 @@ void KernelInformation::LoadInfo()
             // 如果已经存在
             alreadyIndex = indexMap.value(strTemp);
             QJsonArray pkgArray = array.at(alreadyIndex).toObject().value("PkgName").toArray();
+            QJsonArray archArray = array.at(alreadyIndex).toObject().value("Arch").toArray();
             pkgArray.append(i);
+            QString pkgArch = info.get_architecture(i);
+            if(!archArray.contains(pkgArch)) {
+                archArray.append(pkgArch);
+            }
             QJsonObject pkgObject = array.at(alreadyIndex).toObject();
             pkgObject["PkgName"] = pkgArray;
+            pkgObject["Arch"] = archArray;
             array.replace(alreadyIndex, pkgObject);
             continue;
         }
@@ -61,21 +67,21 @@ void KernelInformation::LoadInfo()
         object.insert("Name", strTemp);
         object.insert("Author", info.get_maintainer(i));
         object.insert("Des", info.get_description(i));
-        object.insert("Arch", info.get_architecture(i));
+        object.insert("Arch", QJsonArray::fromStringList(QStringList() << info.get_architecture(i)));
         object.insert("PkgName", QJsonArray::fromStringList(QStringList() << i));
         indexMap.insert(strTemp, array.count());
         array.append(object);
     }
     // 添加 GXDE Kernel Manager
     AptPkgInfo kernelManagerinfo = AptPkgInfo("gxde-kernel-manager", AptPkgInfo::PkgSearchOption::Equal);
-    list = info.GetAptPackageList();
+    list = kernelManagerinfo.GetAptPackageList();
     for(QString i: list) {
         QJsonObject object;
         info.SetPkgName(i);
         object.insert("Name", i);
-        object.insert("Author", info.get_maintainer(i));
-        object.insert("Des", info.get_description(i));
-        object.insert("Arch", info.get_architecture(i));
+        object.insert("Author", kernelManagerinfo.get_maintainer(i));
+        object.insert("Des", kernelManagerinfo.get_description(i));
+        object.insert("Arch", QJsonArray::fromStringList(QStringList() << arch()));
         object.insert("PkgName", QJsonArray::fromStringList(QStringList() << i));
         array.append(object);
     }
@@ -146,16 +152,17 @@ QStringList KernelInformation::get_system(int value) const
 
 QStringList KernelInformation::get_arch(int value) const
 {
-    //QJsonArray list = get_kernelData(value).value("Arch").toArray();
-    /*int count = list.count();
+    QJsonArray list = get_kernelData(value).value("Arch").toArray();
+    int count = list.count();
     QStringList result;
     for(int i = 0; i < count; i++) {
         result << list.at(i).toString();
     }
     if(!result.count()) {
         result << "all";
-    }*/
-    return QStringList() << get_kernelData(value).value("Arch").toString();
+        qDebug() << get_kernelData(value);
+    }
+    return result;
 }
 
 QString KernelInformation::localKernelName() const