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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
|
diff -Naur ./awn-extras.orig/applets/maintained/cairo-menu/gnome-menu-builder.c ./awn-extras/applets/maintained/cairo-menu/gnome-menu-builder.c
--- ./awn-extras.orig/applets/maintained/cairo-menu/gnome-menu-builder.c 2017-04-06 16:56:26.722449231 -0400
+++ ./awn-extras/applets/maintained/cairo-menu/gnome-menu-builder.c 2017-04-06 16:54:56.732453036 -0400
@@ -41,7 +41,6 @@
#define MAX_ITEMS_OR_SUBMENU 7
GMenuTree * main_menu_tree = NULL;
-GMenuTree * settings_menu_tree = NULL;
GtkWidget * menu_build (MenuInstance * instance);
static GtkWidget * submenu_build (MenuInstance * instance);
@@ -844,19 +843,10 @@
gmenu_tree_remove_monitor (main_menu_tree,(GMenuTreeChangedFunc)_submenu_modified_cb,instance);
}
-static void
-_remove_settings_submenu_cb(MenuInstance * instance,GObject *where_the_object_was)
-{
- g_debug ("%s",__func__);
- GMenuTreeDirectory *main_root;
- gmenu_tree_remove_monitor (settings_menu_tree,(GMenuTreeChangedFunc)_submenu_modified_cb,instance);
-}
-
static GtkWidget *
submenu_build (MenuInstance * instance)
{
GMenuTreeDirectory *main_root;
- GMenuTreeDirectory *settings_root;
GtkWidget * menu = NULL;
/*
if the menu is set then clear any menu items (except for places or recent)
@@ -866,10 +856,6 @@
{
main_menu_tree = gmenu_tree_lookup("applications.menu", GMENU_TREE_FLAGS_NONE);
}
- if (!settings_menu_tree)
- {
- settings_menu_tree = gmenu_tree_lookup("settings.menu", GMENU_TREE_FLAGS_NONE);
- }
g_assert (main_menu_tree);
/*
get_places_menu() and get_recent_menu() are
@@ -903,7 +889,6 @@
main_root = gmenu_tree_get_root_directory(main_menu_tree);
g_assert (gmenu_tree_item_get_type( (GMenuTreeItem*)main_root) == GMENU_TREE_ITEM_DIRECTORY);
g_assert (main_root);
- settings_root = gmenu_tree_get_root_directory(settings_menu_tree);
if ( menu_dir = find_menu_dir (instance,main_root) )
{
/* if instance->menu then we're refreshing in a monitor callback*/
@@ -912,22 +897,11 @@
menu = fill_er_up(instance,menu_dir,instance->menu);
g_object_weak_ref (G_OBJECT(menu), (GWeakNotify)_remove_main_submenu_cb,instance);
}
- else if ( settings_root && (menu_dir = find_menu_dir (instance,settings_root)) )
- {
- gmenu_tree_remove_monitor (main_menu_tree,(GMenuTreeChangedFunc)_submenu_modified_cb,instance);
- gmenu_tree_add_monitor (main_menu_tree,(GMenuTreeChangedFunc)_submenu_modified_cb,instance);
- menu = fill_er_up(instance,menu_dir,instance->menu);
- g_object_weak_ref (G_OBJECT(menu), (GWeakNotify)_remove_settings_submenu_cb,instance);
- }
if (menu_dir)
{
gmenu_tree_item_unref(menu_dir);
}
gmenu_tree_item_unref(main_root);
- if (settings_root)
- {
- gmenu_tree_item_unref(settings_root);
- }
}
return instance->menu = menu;
}
@@ -957,10 +931,6 @@
{
main_menu_tree = gmenu_tree_lookup("applications.menu", GMENU_TREE_FLAGS_NONE);
}
- if (!settings_menu_tree)
- {
- settings_menu_tree = gmenu_tree_lookup("settings.menu", GMENU_TREE_FLAGS_NONE);
- }
if (main_menu_tree)
{
@@ -979,44 +949,6 @@
menu_item = gtk_separator_menu_item_new ();
gtk_menu_shell_append(GTK_MENU_SHELL(instance->menu),menu_item);
}
- if (settings_menu_tree)
- {
- root = gmenu_tree_get_root_directory(settings_menu_tree);
- gmenu_tree_remove_monitor (settings_menu_tree,(GMenuTreeChangedFunc)_menu_modified_cb,instance);
- gmenu_tree_add_monitor (settings_menu_tree,(GMenuTreeChangedFunc)_menu_modified_cb,instance);
- if (!instance->menu)
- {
- g_debug ("%s: No applications menu????",__func__);
- instance->menu = fill_er_up(instance,root,instance->menu);
- }
- else
- {
- sub_menu = fill_er_up (instance, root,instance->menu);
-#if 0
- sub_menu = fill_er_up(instance,root,NULL);
- c = g_malloc0 (sizeof(CallbackContainer));
- c->icon_name = g_strdup(gmenu_tree_directory_get_icon (root));
- image = get_gtk_image (c->icon_name);
- txt = gmenu_tree_entry_get_name((GMenuTreeEntry*)root);
- menu_item = cairo_menu_item_new_with_label (txt?txt:"unknown");
- gtk_menu_item_set_submenu (GTK_MENU_ITEM(menu_item),sub_menu);
- if (image)
- {
- gtk_image_menu_item_set_image (GTK_IMAGE_MENU_ITEM (menu_item),image);
- }
- gtk_menu_shell_append(GTK_MENU_SHELL(instance->menu),menu_item);
- c->file_path = g_strdup(gmenu_tree_directory_get_desktop_file_path (root));
- c->display_name = g_strdup ("Settings");
- drop_data = g_strdup_printf("cairo_menu_item_dir:///@@@%s@@@%s@@@%s\n",c->file_path,c->display_name,c->icon_name);
- cairo_menu_item_set_source (AWN_CAIRO_MENU_ITEM(menu_item),drop_data);
- g_free (drop_data);
- c->instance = instance;
- g_signal_connect (menu_item, "button-press-event",G_CALLBACK(_button_press_dir),c);
- g_object_weak_ref (G_OBJECT(menu_item),(GWeakNotify)_free_callback_container,c);
-#endif
- }
- gmenu_tree_item_unref(root);
- }
/*TODO Check to make sure it is needed. Should not be displayed if
all flags are of the NO persuasion.*/
|