添加应用管理器接口
This commit is contained in:
parent
d32082a713
commit
2e70aa12e7
|
@ -0,0 +1,72 @@
|
|||
From: cckylin-cibot <cckylin-cibot@kylinos.cn>
|
||||
Date: Thu, 23 Jun 2022 09:23:21 +0000
|
||||
Subject: =?utf-8?b?5re75Yqg5bqU55So566h55CG5Zmo5o6l5Y+j?=
|
||||
|
||||
---
|
||||
src/UserInterface/tabletwindow.cpp | 2 +-
|
||||
src/UtilityFunction/utility.cpp | 36 +++++++++++++++++++++++-------------
|
||||
2 files changed, 24 insertions(+), 14 deletions(-)
|
||||
|
||||
diff --git a/src/UserInterface/tabletwindow.cpp b/src/UserInterface/tabletwindow.cpp
|
||||
index 4f26924..378ad1f 100755
|
||||
--- a/src/UserInterface/tabletwindow.cpp
|
||||
+++ b/src/UserInterface/tabletwindow.cpp
|
||||
@@ -615,7 +615,7 @@ void TabletWindow::execApplication(QString desktopfp)
|
||||
|
||||
if (!g_subProjectCodeName.contains("mavis")
|
||||
|| (g_subProjectCodeName.contains("mavis") && !QDBusReply<bool>(iface.call("LaunchApp", desktopfp)))) {
|
||||
- execApp(desktopfp);
|
||||
+// execApp(desktopfp);
|
||||
QString str;
|
||||
//打开文件.desktop
|
||||
GError **error = nullptr;
|
||||
diff --git a/src/UtilityFunction/utility.cpp b/src/UtilityFunction/utility.cpp
|
||||
index 3eee325..40c6f08 100755
|
||||
--- a/src/UtilityFunction/utility.cpp
|
||||
+++ b/src/UtilityFunction/utility.cpp
|
||||
@@ -710,22 +710,32 @@ bool deleteAppRecord(QString desktopfn)
|
||||
|
||||
void execApp(QString desktopfp)
|
||||
{
|
||||
- UkuiMenuInterface interface;
|
||||
|
||||
- if (interface.checkKreApp(desktopfp)) {
|
||||
- QProcess::startDetached(interface.getAppExec(desktopfp));
|
||||
- } else {
|
||||
- QString appName = interface.getAppExec(desktopfp);
|
||||
- QStringList strList = (appName.replace("\"", "")).split(" ");
|
||||
+ QDBusInterface iface("com.kylin.AppManager",
|
||||
+ "/com/kylin/AppManager",
|
||||
+ "com.kylin.AppManager",
|
||||
+ QDBusConnection::sessionBus());
|
||||
+ QDBusReply<bool> res = iface.call("LaunchApp", desktopfp);
|
||||
|
||||
- if (QString(strList.at(0)) == "kmplayer") {
|
||||
- QProcess::startDetached(strList.at(0));
|
||||
- return;
|
||||
- }
|
||||
+ if (!res.isValid() || !res) {
|
||||
|
||||
- GDesktopAppInfo *desktopAppInfo = g_desktop_app_info_new_from_filename(desktopfp.toLocal8Bit().data());
|
||||
- g_app_info_launch(G_APP_INFO(desktopAppInfo), nullptr, nullptr, nullptr);
|
||||
- g_object_unref(desktopAppInfo);
|
||||
+ UkuiMenuInterface interface;
|
||||
+
|
||||
+ if (interface.checkKreApp(desktopfp)) {
|
||||
+ QProcess::startDetached(interface.getAppExec(desktopfp));
|
||||
+ } else {
|
||||
+ QString appName = interface.getAppExec(desktopfp);
|
||||
+ QStringList strList = (appName.replace("\"", "")).split(" ");
|
||||
+
|
||||
+ if (QString(strList.at(0)) == "kmplayer") {
|
||||
+ QProcess::startDetached(strList.at(0));
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
+ GDesktopAppInfo *desktopAppInfo = g_desktop_app_info_new_from_filename(desktopfp.toLocal8Bit().data());
|
||||
+ g_app_info_launch(G_APP_INFO(desktopAppInfo), nullptr, nullptr, nullptr);
|
||||
+ g_object_unref(desktopAppInfo);
|
||||
+ }
|
||||
}
|
||||
|
||||
QFileInfo fileInfo(desktopfp);
|
|
@ -1,2 +1,3 @@
|
|||
0001-4-wayland.patch
|
||||
0002-5-platformName-update-debian-changelog.-platformName.patch
|
||||
0003-.patch
|
||||
|
|
Loading…
Reference in New Issue