X-Git-Url: https://git.brokenzipper.com/gitweb?a=blobdiff_plain;f=openbox%2Faction.h;h=e0ea0d566d8c7b8e650122d2c07fc5679b7ce958;hb=ea6d0e0d4d31d0d810fa752d04b702b3b599e3df;hp=a5b1708e412b459478770f0e4db8e6a58fc10721;hpb=7ebc5c797f0435286f25f077e8329ec821fc5e53;p=chaz%2Fopenbox diff --git a/openbox/action.h b/openbox/action.h index a5b1708e..e0ea0d56 100644 --- a/openbox/action.h +++ b/openbox/action.h @@ -12,6 +12,11 @@ struct AnyAction { Client *c; }; +struct DirectionalFocus { + Client *c; + int direction; +}; + struct Execute { Client *c; char *path; @@ -48,24 +53,19 @@ struct NextPreviousDesktop { gboolean wrap; }; -struct Move { +struct MoveResize { Client *c; int x; int y; - gboolean final; + guint32 corner; /* prop_atoms.net_wm_moveresize_* */ + guint button; }; -struct Resize { +struct ShowMenu { Client *c; + char *name; int x; int y; - gboolean final; - Corner corner; -}; - -struct ShowMenu { - Client *c; - char *menuName; }; struct CycleWindows { @@ -78,6 +78,7 @@ struct CycleWindows { union ActionData { struct AnyAction any; + struct DirectionalFocus dfocus; struct Execute execute; struct ClientAction client; struct MoveResizeRelative relative; @@ -85,9 +86,8 @@ union ActionData { struct SendToNextPreviousDesktop sendtonextprev; struct Desktop desktop; struct NextPreviousDesktop nextprevdesktop; - struct Move move; - struct Resize resize; - struct ShowMenu showMenu; + struct MoveResize moveresize; + struct ShowMenu showmenu; struct CycleWindows cycle; }; @@ -112,6 +112,7 @@ Action *action_new(void (*func)(union ActionData *data)); action_resize_relative_horz - the delta action_resize_relative_vert - the delta */ + Action *action_from_string(char *name); void action_free(Action *a); @@ -193,10 +194,8 @@ void action_next_desktop_row(union ActionData *data); void action_previous_desktop_row(union ActionData *data); /* ClientAction */ void action_toggle_decorations(union ActionData *data); -/* Move */ -void action_move(union ActionData *data); -/* Resize */ -void action_resize(union ActionData *data); +/* MoveResize */ +void action_moveresize(union ActionData *data); /* Execute */ void action_restart(union ActionData *data); /* Any */ @@ -205,4 +204,6 @@ void action_exit(union ActionData *data); void action_showmenu(union ActionData *data); /* CycleWindows */ void action_cycle_windows(union ActionData *data); + +void action_directional_focus(union ActionData *data); #endif