[gnome-shell/gnome-3-36] notificationDaemon: Try harder to find a matching app



commit 47bcc095168486940d79b6af4032b00e4621c4f8
Author: Florian Müllner <fmuellner gnome org>
Date:   Fri May 29 19:51:14 2020 +0000

    notificationDaemon: Try harder to find a matching app
    
    Unlike the desktop-entry hint, the app name is not optional. That
    doesn't mean that we'll be able to match it to a .desktop file,
    but we can at least try if we fail to match on PID or desktop-entry.
    
    https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1291
    
    
    (cherry picked from commit b487846c0a161643b048618a44dbc395c23cb44c)

 js/ui/notificationDaemon.js | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)
---
diff --git a/js/ui/notificationDaemon.js b/js/ui/notificationDaemon.js
index 28fe8ba066..3c8e90b1e0 100644
--- a/js/ui/notificationDaemon.js
+++ b/js/ui/notificationDaemon.js
@@ -373,12 +373,11 @@ var FdoNotificationDaemonSource = GObject.registerClass(
 class FdoNotificationDaemonSource extends MessageTray.Source {
     _init(title, pid, sender, appId) {
         this.pid = pid;
+        this.initialTitle = title;
         this.app = this._getApp(appId);
 
         super._init(title);
 
-        this.initialTitle = title;
-
         if (this.app)
             this.title = this.app.get_name();
         else
@@ -426,19 +425,20 @@ class FdoNotificationDaemonSource extends MessageTray.Source {
     }
 
     _getApp(appId) {
+        const appSys = Shell.AppSystem.get_default();
         let app;
 
         app = Shell.WindowTracker.get_default().get_app_from_pid(this.pid);
         if (app != null)
             return app;
 
-        if (appId) {
-            app = Shell.AppSystem.get_default().lookup_app('%s.desktop'.format(appId));
-            if (app != null)
-                return app;
-        }
+        if (appId)
+            app = appSys.lookup_app('%s.desktop'.format(appId));
 
-        return null;
+        if (!app)
+            app = appSys.lookup_app('%s.desktop'.format(this.initialTitle));
+
+        return app;
     }
 
     setTitle(title) {


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]