diff options
-rw-r--r-- | src/launcher-menu-item.c | 4 | ||||
-rw-r--r-- | src/messages-service.c | 5 |
2 files changed, 8 insertions, 1 deletions
diff --git a/src/launcher-menu-item.c b/src/launcher-menu-item.c index 822196b..5afe7a9 100644 --- a/src/launcher-menu-item.c +++ b/src/launcher-menu-item.c @@ -137,6 +137,10 @@ launcher_menu_item_new (const gchar * desktop_file) g_signal_connect(G_OBJECT(self), DBUSMENU_MENUITEM_SIGNAL_ITEM_ACTIVATED, G_CALLBACK(activate_cb), NULL); + if (priv->appinfo == NULL) { + launcher_menu_item_set_eclipsed(self, TRUE); + } + return self; } diff --git a/src/messages-service.c b/src/messages-service.c index 1a2fa82..1272355 100644 --- a/src/messages-service.c +++ b/src/messages-service.c @@ -1148,7 +1148,10 @@ build_launcher (gpointer data) dbusmenu_menuitem_child_append(root_menuitem, DBUSMENU_MENUITEM(ll->separator)); resort_menu(root_menuitem); - if (blacklist_check(launcher_menu_item_get_desktop(ll->menuitem))) { + /* If we're in the black list or we've gotten eclipsed + by something else, hide the item and the separator. */ + if (blacklist_check(launcher_menu_item_get_desktop(ll->menuitem)) || + launcher_menu_item_get_eclipsed(ll->menuitem)) { launcher_menu_item_set_eclipsed(ll->menuitem, TRUE); dbusmenu_menuitem_property_set(ll->separator, DBUSMENU_MENUITEM_PROP_VISIBLE, "false"); } |