From: Dana Jansens Date: Fri, 22 Jun 2007 14:39:01 +0000 (+0000) Subject: add the fullscreen action X-Git-Url: https://git.dogcows.com/gitweb?a=commitdiff_plain;h=1eb727064a4ad19c89b55d08d68e8d4b85c0b1d7;p=chaz%2Fopenbox add the fullscreen action --- diff --git a/Makefile.am b/Makefile.am index 03b94809..43dc8788 100644 --- a/Makefile.am +++ b/Makefile.am @@ -163,6 +163,7 @@ openbox_openbox_SOURCES = \ openbox/actions/execute.c \ openbox/actions/exit.c \ openbox/actions/focus.c \ + openbox/actions/fullscreen.c \ openbox/actions/iconify.c \ openbox/actions/lower.c \ openbox/actions/move.c \ diff --git a/openbox/action.c b/openbox/action.c index 5393bb8a..50df9f28 100644 --- a/openbox/action.c +++ b/openbox/action.c @@ -569,11 +569,6 @@ ActionString actionstrings[] = action_toggle_maximize_vert, setup_client_action }, - { - "togglefullscreen", - action_toggle_fullscreen, - setup_client_action - }, { "sendtodesktop", action_send_to_desktop, @@ -1215,13 +1210,6 @@ void action_toggle_maximize_vert(union ActionData *data) client_action_end(data, config_focus_under_mouse); } -void action_toggle_fullscreen(union ActionData *data) -{ - client_action_start(data); - client_fullscreen(data->client.any.c, !(data->client.any.c->fullscreen)); - client_action_end(data, config_focus_under_mouse); -} - void action_send_to_desktop(union ActionData *data) { ObClient *c = data->sendto.any.c; diff --git a/openbox/actions/all.c b/openbox/actions/all.c index 101cc75f..a7295ac7 100644 --- a/openbox/actions/all.c +++ b/openbox/actions/all.c @@ -19,4 +19,5 @@ void action_all_startup() action_raiselower_startup(); action_unfocus_startup(); action_iconify_startup(); + action_fullscreen_startup(); } diff --git a/openbox/actions/all.h b/openbox/actions/all.h index 0b6813eb..238dc3a9 100644 --- a/openbox/actions/all.h +++ b/openbox/actions/all.h @@ -20,5 +20,6 @@ void action_lower_startup(); void action_raiselower_startup(); void action_unfocus_startup(); void action_iconify_startup(); +void action_fullscreen_startup(); #endif diff --git a/openbox/actions/fullscreen.c b/openbox/actions/fullscreen.c new file mode 100644 index 00000000..c791191e --- /dev/null +++ b/openbox/actions/fullscreen.c @@ -0,0 +1,24 @@ +#include "openbox/actions.h" +#include "openbox/client.h" + +static gboolean run_func(ObActionsData *data, gpointer options); + +void action_fullscreen_startup() +{ + actions_register("Fullscreen", + NULL, NULL, + run_func, + NULL, NULL); +} + +/* Always return FALSE because its not interactive */ +static gboolean run_func(ObActionsData *data, gpointer options) +{ + if (data->client) { + actions_client_move(data, TRUE); + client_fullscreen(data->client, !data->client->fullscreen); + actions_client_move(data, FALSE); + } + + return FALSE; +}