From 280529221e9349aa07c6c498df6b80b3a8951198 Mon Sep 17 00:00:00 2001 From: Dana Jansens Date: Mon, 7 May 2007 23:26:22 +0000 Subject: add a notifier for clients changing desktops. use it to update the send-to menu if it changes. it does this by closing/opening the menu.. thats about the best we can do tho with this menu code without huge changes --- openbox/menu.h | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'openbox/menu.h') diff --git a/openbox/menu.h b/openbox/menu.h index f66e423e..9fc84bb8 100644 --- a/openbox/menu.h +++ b/openbox/menu.h @@ -37,6 +37,8 @@ typedef struct _ObNormalMenuEntry ObNormalMenuEntry; typedef struct _ObSubmenuMenuEntry ObSubmenuMenuEntry; typedef struct _ObSeparatorMenuEntry ObSeparatorMenuEntry; +typedef void (*ObMenuShowFunc)(struct _ObMenuFrame *frame, gpointer data); +typedef void (*ObMenuHideFunc)(struct _ObMenuFrame *frame, gpointer data); typedef gboolean (*ObMenuUpdateFunc)(struct _ObMenuFrame *frame, gpointer data); typedef void (*ObMenuExecuteFunc)(struct _ObMenuEntry *entry, @@ -75,6 +77,8 @@ struct _ObMenu /* plugin data */ gpointer data; + ObMenuShowFunc show_func; + ObMenuHideFunc hide_func; ObMenuUpdateFunc update_func; ObMenuExecuteFunc execute_func; ObMenuDestroyFunc destroy_func; @@ -166,6 +170,8 @@ void menu_show_all_shortcuts(ObMenu *self, gboolean show); void menu_show(gchar *name, gint x, gint y, gint button, struct _ObClient *client); +void menu_set_show_func(ObMenu *menu, ObMenuShowFunc func); +void menu_set_hide_func(ObMenu *menu, ObMenuHideFunc func); void menu_set_update_func(ObMenu *menu, ObMenuUpdateFunc func); void menu_set_execute_func(ObMenu *menu, ObMenuExecuteFunc func); void menu_set_destroy_func(ObMenu *menu, ObMenuDestroyFunc func); -- cgit v1.2.3