From b80570671b2fb35432580784690ed305ebb1b653 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ball=C3=B3=20Gy=C3=B6rgy?= Date: Wed, 15 Oct 2014 20:57:51 +0200 Subject: [PATCH 2/5] Use custom menu layout The official GNOME menu layout adds some additional categories, which may confuse users. Reduce them in our custom menu layout file. --- data/Makefile.am | 8 +- data/gnome-panel-applications.menu | 156 +++++++++++++++++++++++++++++++++++++ gnome-panel/menu.c | 2 +- gnome-panel/panel-addto.c | 4 +- gnome-panel/panel-menu-bar.c | 2 +- gnome-panel/panel-menu-button.c | 2 +- gnome-panel/panel-run-dialog.c | 2 +- 7 files changed, 169 insertions(+), 7 deletions(-) create mode 100644 data/gnome-panel-applications.menu diff --git a/data/Makefile.am b/data/Makefile.am index 83f82e2..456712f 100644 --- a/data/Makefile.am +++ b/data/Makefile.am @@ -33,9 +33,15 @@ gsettings_SCHEMAS = $(gsettings_schemas_in:.xml.in=.xml) default_layoutdir = $(datadir)/gnome-panel default_layout_DATA = panel-default-layout.layout +menudir = $(sysconfdir)/xdg/menus + +menu_DATA = \ + gnome-panel-applications.menu + EXTRA_DIST = \ $(gsettings_schemas_in_in) \ - $(default_layout_DATA) + $(default_layout_DATA) \ + $(menu_DATA) CLEANFILES = \ $(gsettings__enum_file) \ diff --git a/data/gnome-panel-applications.menu b/data/gnome-panel-applications.menu new file mode 100644 index 0000000..0ebd920 --- /dev/null +++ b/data/gnome-panel-applications.menu @@ -0,0 +1,156 @@ + + + + + Applications + X-GNOME-Menu-Applications.directory + + + + /etc/X11/applnk + /usr/share/gnome/apps + + + + + + + + + + + Accessories + Utility.directory + + + Utility + + Accessibility + System + + + + + + + Universal Access + Utility-Accessibility.directory + + + Accessibility + + + + + + + Development + Development.directory + + + Development + + emacs.desktop + + + + + + Education + Education.directory + + + Education + + + + + + + Games + Game.directory + + + Game + + + + + + + Graphics + Graphics.directory + + + Graphics + + + + + + + Internet + Network.directory + + + Network + + + + + + + Multimedia + AudioVideo.directory + + + AudioVideo + + + + + + + Office + Office.directory + + + Office + + + + + + + System + System-Tools.directory + + + System + + + + + + + Other + X-GNOME-Other.directory + + + + Core + Screensaver + + + + + + + Other + + + + diff --git a/gnome-panel/menu.c b/gnome-panel/menu.c index f338516..b086dc3 100644 --- a/gnome-panel/menu.c +++ b/gnome-panel/menu.c @@ -1386,7 +1386,7 @@ create_main_menu (PanelWidget *panel) { GtkWidget *main_menu; - main_menu = create_applications_menu ("gnome-applications.menu", NULL, TRUE); + main_menu = create_applications_menu ("gnome-panel-applications.menu", NULL, TRUE); g_object_set_data (G_OBJECT (main_menu), "menu_panel", panel); /* FIXME need to update the panel on parent_set */ diff --git a/gnome-panel/panel-addto.c b/gnome-panel/panel-addto.c index e5a6945..3df7c11 100644 --- a/gnome-panel/panel-addto.c +++ b/gnome-panel/panel-addto.c @@ -663,7 +663,7 @@ panel_addto_make_application_model (PanelAddtoDialog *dialog) G_TYPE_POINTER, G_TYPE_STRING); - tree = gmenu_tree_new ("gnome-applications.menu", GMENU_TREE_FLAGS_SORT_DISPLAY_NAME); + tree = gmenu_tree_new ("gnome-panel-applications.menu", GMENU_TREE_FLAGS_SORT_DISPLAY_NAME); if (!gmenu_tree_load_sync (tree, NULL)) { g_object_unref (tree); @@ -672,7 +672,7 @@ panel_addto_make_application_model (PanelAddtoDialog *dialog) if (tree != NULL && (root = gmenu_tree_get_root_directory (tree))) { panel_addto_make_application_list (&dialog->application_list, - root, "gnome-applications.menu", + root, "gnome-panel-applications.menu", PANEL_ADDTO_MENU_SHOW_ALL); panel_addto_populate_application_model (store, NULL, dialog->application_list); diff --git a/gnome-panel/panel-menu-bar.c b/gnome-panel/panel-menu-bar.c index 8c736ea..27fa4ca 100644 --- a/gnome-panel/panel-menu-bar.c +++ b/gnome-panel/panel-menu-bar.c @@ -114,7 +114,7 @@ panel_menu_bar_init (PanelMenuBar *menubar) menubar->priv->info = NULL; - menubar->priv->applications_menu = create_applications_menu ("gnome-applications.menu", NULL, TRUE); + menubar->priv->applications_menu = create_applications_menu ("gnome-panel-applications.menu", NULL, TRUE); menubar->priv->applications_item = panel_image_menu_item_new2 (); gtk_menu_item_set_label (GTK_MENU_ITEM (menubar->priv->applications_item), diff --git a/gnome-panel/panel-menu-button.c b/gnome-panel/panel-menu-button.c index 22c4f3a..e2253e9 100644 --- a/gnome-panel/panel-menu-button.c +++ b/gnome-panel/panel-menu-button.c @@ -71,7 +71,7 @@ typedef struct { } MenuPathRootItem; static MenuPathRootItem root_items [] = { - { APPLICATIONS_MENU, "applications", "gnome-applications.menu" }, + { APPLICATIONS_MENU, "applications", "gnome-panel-applications.menu" }, { GNOMECC_MENU, "gnomecc", "gnomecc.menu" } }; diff --git a/gnome-panel/panel-run-dialog.c b/gnome-panel/panel-run-dialog.c index 8beb907..6d14cf9 100644 --- a/gnome-panel/panel-run-dialog.c +++ b/gnome-panel/panel-run-dialog.c @@ -914,7 +914,7 @@ get_all_applications (void) GMenuTreeDirectory *root; GSList *retval; - tree = gmenu_tree_new ("gnome-applications.menu", GMENU_TREE_FLAGS_SORT_DISPLAY_NAME); + tree = gmenu_tree_new ("gnome-panel-applications.menu", GMENU_TREE_FLAGS_SORT_DISPLAY_NAME); if (!gmenu_tree_load_sync (tree, NULL)) return NULL; -- 2.1.2