X-Git-Url: https://git.brokenzipper.com/gitweb?a=blobdiff_plain;f=openbox%2Factions.h;h=3db6d7927e0cb33304308c48c1740b8f5ef768d7;hb=1b7e813c62a6e54690d15550d51ac4269e63f346;hp=df30413099acd108faa13514d9cc9a905b43254b;hpb=ae624a1487fd7db9291c4de1a3b2c34fcab89ef9;p=chaz%2Fopenbox diff --git a/openbox/actions.h b/openbox/actions.h index df304130..3db6d792 100644 --- a/openbox/actions.h +++ b/openbox/actions.h @@ -41,51 +41,23 @@ typedef gboolean (*ObActionsInteractiveInputFunc)(guint initial_state, gboolean *used); typedef void (*ObActionsInteractiveCancelFunc)(gpointer options); -typedef enum { - OB_ACTION_TYPE_GLOBAL, - OB_ACTION_TYPE_CLIENT -} ObActionsType; - -/* These structures are all castable as eachother */ - -struct _ObActionsAnyData { +struct _ObActionsData { ObUserAction uact; Time time; guint state; gint x; gint y; -}; - -struct _ObActionsGlobalData { - ObActionsType type; - ObActionsAnyData any; -}; -struct _ObActionsClientData { - ObActionsType type; - ObActionsAnyData any; - - struct _ObClient *c; + struct _ObClient *client; ObFrameContext context; }; -struct _ObActionsData { - ObActionsType type; - - union { - ObActionsAnyData any; - ObActionsGlobalData global; - ObActionsClientData client; - }; -}; - void actions_startup(gboolean reconfigure); void actions_shutdown(gboolean reconfigure); /*! If the action is interactive, then i_input and i_cancel are not NULL. Otherwise, they should both be NULL. */ gboolean actions_register(const gchar *name, - ObActionsType type, ObActionsDataSetupFunc setup, ObActionsDataFreeFunc free, ObActionsRunFunc run,