]> git.pld-linux.org Git - packages/desktop-file-utils.git/blame - desktop-file-utils-directory_onlyshowin.patch
- moved from desktop-file-utils-directory_notshowin.patch
[packages/desktop-file-utils.git] / desktop-file-utils-directory_onlyshowin.patch
CommitLineData
375d3e7a 1diff -urN aa/desktop-file-utils-0.7/src/menu-entries.c desktop-file-utils-0.7/src/menu-entries.c
2--- aa/desktop-file-utils-0.7/src/menu-entries.c 2004-07-28 21:48:48.387936296 +0200
3+++ desktop-file-utils-0.7/src/menu-entries.c 2004-07-28 22:03:14.458273592 +0200
4@@ -1938,6 +1938,56 @@
5
6 /* End checking for NoDisplay */
7
8+ if (!show)
9+ {
10+ e = entry_new (ENTRY_DIRECTORY, basename, filename, show);
11+ g_free (str);
12+ return e;
13+ }
14+
15+ /* Check for OnlyShowIn */
16+ char *onlyshowin;
17+
18+ show = TRUE;
19+
20+ onlyshowin = find_value (str, "OnlyShowIn");
21+
22+ if (onlyshowin != NULL)
23+ {
24+ char **split;
25+ int i;
26+
27+ show = FALSE;
28+
29+ split = string_list_from_desktop_value (onlyshowin);
30+ i = 0;
31+ while (split[i] != NULL)
32+ {
33+ if (strcmp (split[i], "GNOME") == 0)
34+ {
35+ show = TRUE;
36+ break;
37+ }
38+
39+ ++i;
40+ }
41+
42+ if (!show)
43+ menu_verbose ("Not showing \"%s\" due to OnlyShowIn=%s\n",
44+ filename, onlyshowin);
45+
46+ g_strfreev (split);
47+ g_free (onlyshowin);
48+ }
49+ /* End checking for OnlyShowIn */
50+
51+ if (!show)
52+ {
53+ e = entry_new (ENTRY_DIRECTORY, basename, filename, show);
54+ g_free (str);
55+ return e;
56+ }
57+
58 e = entry_new (ENTRY_DIRECTORY, basename, filename, show);
59
60 g_free (str);
This page took 0.06654 seconds and 4 git commands to generate.