From 72384e3768b7867831f2cc4a434d930b39a94308 Mon Sep 17 00:00:00 2001 From: ssk-wh Date: Fri, 13 Jan 2023 09:31:49 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E9=BB=98=E8=AE=A4?= =?UTF-8?q?=E7=A8=8B=E5=BA=8F=E6=9C=89=E5=A4=9A=E4=B8=AA=E4=BC=9A=E5=86=B2?= =?UTF-8?q?=E7=AA=81=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 解析优先默认程序的配置文件时解析错误 Log: 修复默认程序有多个会冲突的问题 Influence: 默认程序 Bug: https://pms.uniontech.com/bug-view-182127.html Change-Id: Ib9c86af489e5a5b48f5dc6326e16ba7ad5b7b2b1 --- src/modules/methods/use_default_app_info.h | 20 ++++++++++---------- src/modules/mimeapp/mime_app.cpp | 2 +- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/src/modules/methods/use_default_app_info.h b/src/modules/methods/use_default_app_info.h index 522c923..bc76f19 100644 --- a/src/modules/methods/use_default_app_info.h +++ b/src/modules/methods/use_default_app_info.h @@ -19,22 +19,22 @@ struct DefaultUserAppInfos { inline void toJson(QJsonObject& j, const DefaultUserAppInfo& userAppInfo) { - j = QJsonObject{ { "appId", QJsonArray::fromVariantList(userAppInfo.appId) }, { "appType", userAppInfo.appType.c_str() }, { "supportedType", QJsonArray::fromVariantList(userAppInfo.supportedType) }}; + j = QJsonObject{ { "AppId", QJsonArray::fromVariantList(userAppInfo.appId) }, { "AppType", userAppInfo.appType.c_str() }, { "SupportedType", QJsonArray::fromVariantList(userAppInfo.supportedType) }}; } inline void fromJson(const QJsonObject& j, DefaultUserAppInfo& userAppInfo) { - if (j.contains("appId")) { - userAppInfo.appId = j.value("appId").toArray().toVariantList(); + if (j.contains("AppId")) { + userAppInfo.appId = j.value("AppId").toArray().toVariantList(); } - if (j.contains("appType")) { - userAppInfo.appType = j.value("appType").toString().toStdString(); + if (j.contains("AppType")) { + userAppInfo.appType = j.value("AppType").toString().toStdString(); } - if (j.contains("supportedType")) { - userAppInfo.supportedType = j.value("supportedType").toArray().toVariantList(); + if (j.contains("SupportedType")) { + userAppInfo.supportedType = j.value("SupportedType").toArray().toVariantList(); } } @@ -49,7 +49,7 @@ inline void toJson(QJsonObject& j, const DefaultUserAppInfos& userAppInfos) } j = QJsonObject { - {"appInfos", appInfoArray} + {"DefaultApps", appInfoArray} }; } @@ -57,9 +57,9 @@ inline void fromJson(const QJsonObject& j, DefaultUserAppInfos& userAppInfos) { QJsonObject tmpObj = j; - if (j.contains("appInfos")) { + if (j.contains("DefaultApps")) { DefaultUserAppInfo userAppInfo; - for (auto appInfo : tmpObj.take("appInfos").toArray()) { + for (auto appInfo : tmpObj.take("DefaultApps").toArray()) { fromJson(appInfo.toObject(), userAppInfo); userAppInfos.appInfos.push_back(userAppInfo); } diff --git a/src/modules/mimeapp/mime_app.cpp b/src/modules/mimeapp/mime_app.cpp index 4b47fcb..e11318a 100644 --- a/src/modules/mimeapp/mime_app.cpp +++ b/src/modules/mimeapp/mime_app.cpp @@ -197,6 +197,7 @@ void MimeApp::deleteMimeAssociation(std::string mimeType, std::string desktopId) void MimeApp::initConfigData() { + // TODO 这个配置文件当前仍然是在dde-daemon中,但mime的服务已经迁移到此项目,后续应该把这个配置文件拿过来 std::string filename = findFilePath("/dde-daemon/mime/data.json"); QFile file(filename.c_str()); @@ -236,7 +237,6 @@ void MimeApp::initConfigData() } } } - } std::string MimeApp::findFilePath(std::string fileName)