1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | g_in_desktop (const gchar *name) { const gchar *xdg_current_desktop; gboolean in_desktop; gchar **desktops; gint i; xdg_current_desktop = g_getenv ("XDG_CURRENT_DESKTOP"); if (!xdg_current_desktop) return FALSE; in_desktop = FALSE; desktops = g_strsplit (xdg_current_desktop, ":", -1); for (i = 0; desktops[i] != NULL; i++) { if (g_strcmp0 (desktops[i], name) == 0) { in_desktop = TRUE; break; } } g_strfreev (desktops); return in_dekstop; } |