diff --git a/openbox/actions/fullscreen.c b/openbox/actions/fullscreen.c index e1fdf232a..8ad766a55 100644 --- a/openbox/actions/fullscreen.c +++ b/openbox/actions/fullscreen.c @@ -6,6 +6,8 @@ static gboolean run_func_toggle(ObActionsData *data, gpointer options); void action_fullscreen_startup(void) { actions_register("ToggleFullscreen", NULL, NULL, run_func_toggle); + actions_register("Fullscreen", NULL, NULL, run_func_on); + actions_register("Unfullscreen", NULL, NULL, run_func_off); } /* Always return FALSE because its not interactive */ @@ -18,3 +20,25 @@ static gboolean run_func_toggle(ObActionsData *data, gpointer options) } return FALSE; } + +/* Always return FALSE because its not interactive */ +static gboolean run_func_on(ObActionsData *data, gpointer options) +{ + if (data->client) { + actions_client_move(data, TRUE); + client_fullscreen(data->client, TRUE); + actions_client_move(data, FALSE); + } + return FALSE; +} + +/* Always return FALSE because its not interactive */ +static gboolean run_func_off(ObActionsData *data, gpointer options) +{ + if (data->client) { + actions_client_move(data, TRUE); + client_fullscreen(data->client, FALSE); + actions_client_move(data, FALSE); + } + return FALSE; +}