Andrew Geissler | 72956ed | 2021-01-08 16:11:14 -0600 | [diff] [blame] | 1 | Index: openbox-xdgmenu-0.3/openbox-xdgmenu.c |
| 2 | =================================================================== |
| 3 | --- openbox-xdgmenu-0.3.orig/openbox-xdgmenu.c |
| 4 | +++ openbox-xdgmenu-0.3/openbox-xdgmenu.c |
| 5 | @@ -197,7 +197,7 @@ void process_entry(GMenuTreeEntry *entry |
| 6 | { |
| 7 | GDesktopAppInfo *appinfo = gmenu_tree_entry_get_app_info (entry); |
| 8 | char *name = g_strdup (g_app_info_get_name(G_APP_INFO(appinfo))); |
| 9 | - char *exec = g_strdup (g_app_info_get_executable(G_APP_INFO(appinfo))); |
| 10 | + char *exec = g_strdup (g_app_info_get_commandline(G_APP_INFO(appinfo))); |
| 11 | int i; |
| 12 | |
| 13 | for (i = 0; i < strlen(exec) - 1; i++) { |
| 14 | @@ -217,8 +217,11 @@ void process_entry(GMenuTreeEntry *entry |
| 15 | } |
| 16 | } |
| 17 | |
| 18 | - g_printf("<item label=\"%s\">\n", g_strjoinv("&", g_strsplit(name,"&",0))), |
| 19 | - g_printf("<action name=\"Execute\"><command>%s</command></action>\n", exec), |
| 20 | + g_printf("<item label=\"%s\">\n", g_strjoinv("&", g_strsplit(name,"&",0))); |
| 21 | + g_printf("<action name=\"Execute\"><command>%s%s</command></action>\n", |
| 22 | + g_desktop_app_info_get_boolean(appinfo, G_KEY_FILE_DESKTOP_KEY_TERMINAL) ? |
| 23 | + "x-terminal-emulator -e " : "", |
| 24 | + exec); |
| 25 | g_printf("</item>\n"); |
| 26 | |
| 27 | g_free(name); |