Author: kelnos Date: 2007-03-23 16:56:33 +0000 (Fri, 23 Mar 2007) New Revision: 25270
Removed: xfdesktop/trunk/modules/menu/frapmenu/ xfdesktop/trunk/modules/menu/merge-frapmenu-svn.sh Modified: xfdesktop/trunk/common/desktop-menu-stub.c xfdesktop/trunk/configure.ac.in xfdesktop/trunk/modules/menu/Makefile.am xfdesktop/trunk/modules/menu/desktop-menu-private.h xfdesktop/trunk/modules/menu/desktop-menu.c xfdesktop/trunk/panel-plugin/Makefile.am xfdesktop/trunk/src/Makefile.am Log: ditch frapmenu and use libxfce4menu instead. awesome. Modified: xfdesktop/trunk/common/desktop-menu-stub.c =================================================================== --- xfdesktop/trunk/common/desktop-menu-stub.c 2007-03-23 16:02:24 UTC (rev 25269) +++ xfdesktop/trunk/common/desktop-menu-stub.c 2007-03-23 16:56:33 UTC (rev 25270) @@ -38,8 +38,8 @@ void (*xfce_desktop_menu_set_show_icons)(XfceDesktopMenu *desktop_menu, gboolean show_icons) = NULL; static void (*xfce_desktop_menu_destroy_p)(XfceDesktopMenu *desktop_menu) = NULL; -static void (*my_frap_menu_init)(const gchar *env) = NULL; -static void (*my_frap_menu_shutdown)() = NULL; +static void (*my_xfce_menu_init)(const gchar *env) = NULL; +static void (*my_xfce_menu_shutdown)() = NULL; static GQuark desktop_menu_error_quark() @@ -114,10 +114,10 @@ } if(!_setup_functions(module) - || !g_module_symbol(module, "frap_menu_init", - (gpointer)&my_frap_menu_init) - || !g_module_symbol(module, "frap_menu_shutdown", - (gpointer)&my_frap_menu_shutdown)) + || !g_module_symbol(module, "xfce_menu_init", + (gpointer)&my_xfce_menu_init) + || !g_module_symbol(module, "xfce_menu_shutdown", + (gpointer)&my_xfce_menu_shutdown)) { if(err) { g_set_error(err, desktop_menu_error_quark(), 0, @@ -128,7 +128,7 @@ return NULL; } - my_frap_menu_init("XFCE"); + my_xfce_menu_init("XFCE"); return module; } @@ -136,7 +136,7 @@ static void desktop_menu_stub_cleanup(GModule *module) { - my_frap_menu_shutdown(); + my_xfce_menu_shutdown(); g_module_close(module); } Modified: xfdesktop/trunk/configure.ac.in =================================================================== --- xfdesktop/trunk/configure.ac.in 2007-03-23 16:02:24 UTC (rev 25269) +++ xfdesktop/trunk/configure.ac.in 2007-03-23 16:56:33 UTC (rev 25270) @@ -9,6 +9,7 @@ dnl minimum required versions m4_define([gtk_minimum_version], [2.6.0]) m4_define([xfce_minimum_version], [4.4.0]) +m4_define([xfce4menu_minimum_version], [0.1.0]) m4_define([exo_minimum_version], [0.3.2]) m4_define([thunar_minimum_version], [0.8.0]) m4_define([dbus_minimum_version], [0.34]) @@ -178,13 +179,24 @@ [ac_cv_enable_desktop_menu=$enableval], [ac_cv_enable_desktop_menu=yes]) if test "x$ac_cv_enable_desktop_menu" = "xno"; then - build_desktop_menu="no" + build_desktop_menu="no" else - build_desktop_menu="yes" + dnl time for more abuse! + XDT_CHECK_PACKAGE([LIBXFCE4MENU], [libxfce4menu-0.1], + [xfce4menu_minimum_version], [build_desktop_menu="yes"], + [ +echo "*** Optional package libxfce4menu-0.1 was either not found on your system" +echo "*** or is too old. Please install or upgrade to at least version" +echo "*** xfce4menu_minimum_version, or adjust the PKG_CONFIG_PATH environment variable" +echo "*** if you installed the new version of the package in a nonstandard" +echo "*** prefix. Desktop menu will be disabled." +build_desktop_menu="no" +]) + if test "x$build_desktop_menu" = "xyes"; then AC_DEFINE([USE_DESKTOP_MENU], [1], - [Define if we should build the desktop menu module]) + [Define if we should build the desktop menu module]) + fi fi -AC_SUBST(DESKTOP_MENU_DIR) AM_CONDITIONAL([BUILD_DESKTOP_MENU], [test "x$build_desktop_menu" = "xyes"]) dnl time for more abuse. if we don't yet have thunar-vfs, we still might want @@ -279,9 +291,6 @@ modules/Makefile modules/menu/Makefile modules/menu/directory-data/Makefile -modules/menu/frapmenu/Makefile -modules/menu/frapmenu/tdb/Makefile -modules/menu/frapmenu/tdb/tdbconfig.h modules/menu/menu-data/Makefile panel-plugin/Makefile pixmaps/Makefile Modified: xfdesktop/trunk/modules/menu/Makefile.am =================================================================== --- xfdesktop/trunk/modules/menu/Makefile.am 2007-03-23 16:02:24 UTC (rev 25269) +++ xfdesktop/trunk/modules/menu/Makefile.am 2007-03-23 16:56:33 UTC (rev 25270) @@ -1,6 +1,5 @@ SUBDIRS = \ directory-data \ - frapmenu \ menu-data plugindir = $(libdir)/xfce4/modules @@ -15,9 +14,9 @@ xfce4_desktop_menu_la_CFLAGS = \ -I$(top_srcdir)/common \ - -I$(srcdir)/frapmenu \ $(GMODULE_CFLAGS) \ $(GTHREAD_CFLAGS) \ + $(LIBXFCE4MENU_CFLAGS) \ $(LIBX11_CFLAGS) \ $(LIBXFCEGUI4_CFLAGS) \ $(THUNAR_VFS_CFLAGS) \ @@ -25,8 +24,10 @@ -DDATADIR=\"$(datadir)\" \ -DBINDIR=\"$(bindir)\" +xfce4_desktop_menu_la_DEPENDENCIES = \ + $(top_builddir)/common/libxfdesktop.la + xfce4_desktop_menu_la_LDFLAGS = \ - $(top_builddir)/common/libxfdesktop.la \ -export-dynamic \ -avoid-version \ -module @@ -37,9 +38,10 @@ endif xfce4_desktop_menu_la_LIBADD = \ - $(top_builddir)/modules/menu/frapmenu/libfrapmenu.la \ + $(top_builddir)/common/libxfdesktop.la \ $(GMODULE_LIBS) \ $(GTHREAD_LIBS) \ + $(LIBXFCE4MENU_LIBS) \ $(LIBX11_LDFLAGS) \ $(LIBX11_LIBS) \ $(LIBXFCEGUI4_LIBS) \ Modified: xfdesktop/trunk/modules/menu/desktop-menu-private.h =================================================================== --- xfdesktop/trunk/modules/menu/desktop-menu-private.h 2007-03-23 16:02:24 UTC (rev 25269) +++ xfdesktop/trunk/modules/menu/desktop-menu-private.h 2007-03-23 16:56:33 UTC (rev 25270) @@ -23,10 +23,10 @@ #include <gtk/gtk.h> -#include "libfrapmenu.h" +#include <libxfce4menu/libxfce4menu.h> struct _XfceDesktopMenu { - FrapMenu *frap_menu; + XfceMenu *xfce_menu; GtkWidget *menu; /* the menu widget itself */ gchar *filename; /* file the menu is currently using */ Modified: xfdesktop/trunk/modules/menu/desktop-menu.c =================================================================== --- xfdesktop/trunk/modules/menu/desktop-menu.c 2007-03-23 16:02:24 UTC (rev 25269) +++ xfdesktop/trunk/modules/menu/desktop-menu.c 2007-03-23 16:56:33 UTC (rev 25270) @@ -81,7 +81,7 @@ static gboolean _generate_menu(XfceDesktopMenu *desktop_menu, gboolean deferred); static void desktop_menu_add_items(XfceDesktopMenu *desktop_menu, - FrapMenu *frap_menu, + XfceMenu *xfce_menu, GtkWidget *menu, GHashTable *watch_dirs); @@ -96,8 +96,8 @@ compare_items(gconstpointer a, gconstpointer b) { - return g_utf8_collate(frap_menu_item_get_name((FrapMenuItem *)a), - frap_menu_item_get_name((FrapMenuItem *)b)); + return g_utf8_collate(xfce_menu_item_get_name((XfceMenuItem *)a), + xfce_menu_item_get_name((XfceMenuItem *)b)); } #endif @@ -189,31 +189,31 @@ static void desktop_menu_add_items(XfceDesktopMenu *desktop_menu, - FrapMenu *frap_menu, + XfceMenu *xfce_menu, GtkWidget *menu, GHashTable *watch_dirs) { GSList *items, *l; GtkWidget *submenu, *mi, *img; - FrapMenu *frap_submenu; - FrapMenuDirectory *frap_directory; - FrapMenuItem *frap_item; + XfceMenu *xfce_submenu; + XfceMenuDirectory *xfce_directory; + XfceMenuItem *xfce_item; const gchar *name, *icon_name; - if(frap_menu_has_layout(frap_menu)) - items = frap_menu_get_layout_items(frap_menu); + if(xfce_menu_has_layout(xfce_menu)) + items = xfce_menu_get_layout_items(xfce_menu); else { - items = frap_menu_get_menus(frap_menu); - items = g_slist_concat(items, frap_menu_get_items(frap_menu)); + items = xfce_menu_get_menus(xfce_menu); + items = g_slist_concat(items, xfce_menu_get_items(xfce_menu)); } for(l = items; l; l = l->next) { - if(FRAP_IS_MENU(l->data)) { - frap_submenu = l->data; - frap_directory = frap_menu_get_directory(frap_submenu); + if(XFCE_IS_MENU(l->data)) { + xfce_submenu = l->data; + xfce_directory = xfce_menu_get_directory(xfce_submenu); - if(frap_directory - && (frap_menu_directory_get_no_display(frap_directory) - || !frap_menu_directory_show_in_environment(frap_directory))) + if(xfce_directory + && (xfce_menu_directory_get_no_display(xfce_directory) + || !xfce_menu_directory_show_in_environment(xfce_directory))) { continue; } @@ -221,13 +221,13 @@ submenu = gtk_menu_new(); gtk_widget_show(submenu); - if(frap_directory) { - name = frap_menu_directory_get_name(frap_directory); - icon_name = frap_menu_directory_get_icon(frap_directory); + if(xfce_directory) { + name = xfce_menu_directory_get_name(xfce_directory); + icon_name = xfce_menu_directory_get_icon(xfce_directory); desktop_menu_watch_dirs_add(watch_dirs, - frap_menu_directory_get_filename(frap_directory)); + xfce_menu_directory_get_filename(xfce_directory)); } else { - name = frap_menu_get_name(frap_submenu); + name = xfce_menu_get_name(xfce_submenu); icon_name = NULL; } @@ -242,36 +242,36 @@ gtk_menu_shell_append(GTK_MENU_SHELL(menu), mi); gtk_menu_item_set_submenu(GTK_MENU_ITEM(mi), submenu); - desktop_menu_add_items(desktop_menu, frap_submenu, submenu, + desktop_menu_add_items(desktop_menu, xfce_submenu, submenu, watch_dirs); /* we have to check emptiness down here instead of at the top of the * loop because there may be further submenus that are empty */ if(!gtk_container_get_children(GTK_CONTAINER(submenu))) gtk_widget_destroy(mi); - } else if(FRAP_IS_MENU_SEPARATOR(l->data)) { + } else if(XFCE_IS_MENU_SEPARATOR(l->data)) { mi = gtk_separator_menu_item_new(); gtk_widget_show(mi); gtk_menu_shell_append(GTK_MENU_SHELL(menu), mi); - } else if(FRAP_IS_MENU_ITEM(l->data)) { - frap_item = l->data; + } else if(XFCE_IS_MENU_ITEM(l->data)) { + xfce_item = l->data; - if(frap_menu_item_get_no_display(frap_item) - || !frap_menu_item_show_in_environment(frap_item)) + if(xfce_menu_item_get_no_display(xfce_item) + || !xfce_menu_item_show_in_environment(xfce_item)) { continue; } - mi = xfce_app_menu_item_new_full(frap_menu_item_get_name(frap_item), - frap_menu_item_get_command(frap_item), - frap_menu_item_get_icon_name(frap_item), - frap_menu_item_requires_terminal(frap_item), - frap_menu_item_supports_startup_notification(frap_item)); + mi = xfce_app_menu_item_new_full(xfce_menu_item_get_name(xfce_item), + xfce_menu_item_get_command(xfce_item), + xfce_menu_item_get_icon_name(xfce_item), + xfce_menu_item_requires_terminal(xfce_item), + xfce_menu_item_supports_startup_notification(xfce_item)); gtk_widget_show(mi); gtk_menu_shell_append(GTK_MENU_SHELL(menu), mi); desktop_menu_watch_dirs_add(watch_dirs, - frap_menu_item_get_filename(frap_item)); + xfce_menu_item_get_filename(xfce_item)); } } g_slist_free(items); @@ -300,14 +300,14 @@ DBG("menu file name is %s", desktop_menu->filename); - /* this is kinda lame, but frapmenu currently caches too much */ - frap_menu_shutdown(); - frap_menu_init("XFCE"); + /* this is kinda lame, but xfcemenu currently caches too much */ + xfce_menu_shutdown(); + xfce_menu_init("XFCE"); if(g_file_test(desktop_menu->filename, G_FILE_TEST_EXISTS)) { - desktop_menu->frap_menu = frap_menu_new(desktop_menu->filename, &error); - if(!desktop_menu->frap_menu) { - g_critical("Unable to create FrapMenu from file '%s': %s", + desktop_menu->xfce_menu = xfce_menu_new(desktop_menu->filename, &error); + if(!desktop_menu->xfce_menu) { + g_critical("Unable to create XfceMenu from file '%s': %s", desktop_menu->filename, error->message); g_error_free(error); return FALSE; @@ -317,15 +317,15 @@ gtk_widget_show(desktop_menu->menu); desktop_menu_watch_dirs_add(watch_dirs, - frap_menu_get_filename(desktop_menu->frap_menu)); + xfce_menu_get_filename(desktop_menu->xfce_menu)); - desktop_menu_add_items(desktop_menu, desktop_menu->frap_menu, + desktop_menu_add_items(desktop_menu, desktop_menu->xfce_menu, desktop_menu->menu, watch_dirs); /* really don't need to keep this around */ - g_object_unref(G_OBJECT(desktop_menu->frap_menu)); - desktop_menu->frap_menu = NULL; + g_object_unref(G_OBJECT(desktop_menu->xfce_menu)); + desktop_menu->xfce_menu = NULL; } if(user_menu && desktop_menu->using_default_menu) { @@ -352,11 +352,11 @@ if(desktop_menu->menu) gtk_widget_destroy(desktop_menu->menu); - if(desktop_menu->frap_menu) - g_object_unref(G_OBJECT(desktop_menu->frap_menu)); + if(desktop_menu->xfce_menu) + g_object_unref(G_OBJECT(desktop_menu->xfce_menu)); desktop_menu->menu = NULL; - desktop_menu->frap_menu = NULL; + desktop_menu->xfce_menu = NULL; } void @@ -489,10 +489,10 @@ { gint w, h; - /* libfrapmenu registers gobject types, so we can't be removed */ + /* libxfcemenu registers gobject types, so we can't be removed */ g_module_make_resident(module); - frap_menu_init("XFCE"); + xfce_menu_init("XFCE"); gtk_icon_size_lookup(GTK_ICON_SIZE_MENU, &w, &h); _xfce_desktop_menu_icon_size = w; Deleted: xfdesktop/trunk/modules/menu/merge-frapmenu-svn.sh Modified: xfdesktop/trunk/panel-plugin/Makefile.am =================================================================== --- xfdesktop/trunk/panel-plugin/Makefile.am 2007-03-23 16:02:24 UTC (rev 25269) +++ xfdesktop/trunk/panel-plugin/Makefile.am 2007-03-23 16:56:33 UTC (rev 25270) @@ -14,6 +14,10 @@ -DLOCALEDIR=\"$(localedir)\" \ -DBINDIR=\"$(bindir)\" +xfce4_menu_plugin_DEPENDENCIES = \ + $(top_builddir)/common/libxfdesktop-menu.la \ + $(top_builddir)/common/libxfdesktop.la + xfce4_menu_plugin_LDADD = \ $(top_builddir)/common/libxfdesktop-menu.la \ $(top_builddir)/common/libxfdesktop.la \ Modified: xfdesktop/trunk/src/Makefile.am =================================================================== --- xfdesktop/trunk/src/Makefile.am 2007-03-23 16:02:24 UTC (rev 25269) +++ xfdesktop/trunk/src/Makefile.am 2007-03-23 16:56:33 UTC (rev 25270) @@ -62,6 +62,7 @@ $(LIBXFCEGUI4_CFLAGS) \ $(LIBXFCE4MCS_CLIENT_CFLAGS) + xfdesktop_LDFLAGS = \ -export-dynamic @@ -69,6 +70,7 @@ xfdesktop_LDADD = $(top_builddir)/common/libxfdesktop.la if BUILD_DESKTOP_MENU xfdesktop_LDADD += $(top_builddir)/common/libxfdesktop-menu.la + xfdesktop_DEPENDENCIES = $(top_builddir)/common/libxfdesktop-menu.la endif xfdesktop_LDADD += \ $(LIBX11_LDFLAGS) \ _______________________________________________ Xfce4-commits mailing list Xfce4-commits@xfce.org http://foo-projects.org/mailman/listinfo/xfce4-commits