diff --git a/src/dbus/applicationmanager1service.cpp b/src/dbus/applicationmanager1service.cpp index c2748b0..61935af 100644 --- a/src/dbus/applicationmanager1service.cpp +++ b/src/dbus/applicationmanager1service.cpp @@ -599,7 +599,7 @@ void ApplicationManager1Service::updateApplication(const QSharedPointerm_entry != newEntry) { + if (*(destApp->m_entry) != *newEntry) { destApp->resetEntry(newEntry); destApp->detachAllInstance(); } @@ -620,7 +620,8 @@ void ApplicationManager1Service::ReloadApplications() m_reloadTimer.start(); - const auto &desktopFileDirs = getDesktopFileDirs(); + auto desktopFileDirs = getDesktopFileDirs(); + desktopFileDirs.append(getAutoStartDirs()); // detect autostart apps add/remove/update auto apps = m_applicationList.keys(); diff --git a/src/dbus/applicationservice.cpp b/src/dbus/applicationservice.cpp index 59dfa04..0f29058 100644 --- a/src/dbus/applicationservice.cpp +++ b/src/dbus/applicationservice.cpp @@ -893,6 +893,7 @@ void ApplicationService::resetEntry(DesktopEntry *newEntry) noexcept emit MimeTypesChanged(); emit terminalChanged(); emit scaleFactorChanged(); + emit launchedTimesChanged(); } std::optional ApplicationService::unescapeExecArgs(const QString &str) noexcept