X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Factions.h;h=6db6f8d666f6bca878f38f3bc8be60c835b6bee5;hb=746859c1017e9cdf73eb91470e795f0c4b98b21a;hp=3db6d7927e0cb33304308c48c1740b8f5ef768d7;hpb=b76ec18d1c8857cf32598c822364298fc535c84e;p=chaz%2Fopenbox diff --git a/openbox/actions.h b/openbox/actions.h index 3db6d792..6db6f8d6 100644 --- a/openbox/actions.h +++ b/openbox/actions.h @@ -43,10 +43,10 @@ typedef void (*ObActionsInteractiveCancelFunc)(gpointer options); struct _ObActionsData { ObUserAction uact; - Time time; guint state; gint x; gint y; + gint button; struct _ObClient *client; ObFrameContext context; @@ -74,15 +74,22 @@ gboolean actions_act_is_interactive(ObActionsAct *act); void actions_act_ref(ObActionsAct *act); void actions_act_unref(ObActionsAct *act); -/*! Pass in a GSList of ObActionsAct's to be run. - @return TRUE if an action is in interactive state, FALSE is none are +/*! When this is true, an XAllowEvents with ReplayPointer will be called + if an action is going to maybe try moving windows around on screen (or + map/unmap windows) */ +void actions_set_need_pointer_replay_before_move(gboolean replay); +/*! Returns if a ReplayPointer is still needed. If it was called while running + actions then this will be false */ +gboolean actions_get_need_pointer_replay_before_move(); + +/*! Pass in a GSList of ObActionsAct's to be run. */ void actions_run_acts(GSList *acts, ObUserAction uact, - Time time, guint state, gint x, gint y, + gint button, ObFrameContext con, struct _ObClient *client); @@ -90,3 +97,6 @@ gboolean actions_interactive_act_running(); void actions_interactive_cancel_act(); gboolean actions_interactive_input_event(XEvent *e); + +/*! Function for actions to call when they are moving a client around */ +void actions_client_move(ObActionsData *data, gboolean start);