From 41010812fa1e891e162c88a3c962522832517cc4 Mon Sep 17 00:00:00 2001 From: Dana Jansens Date: Tue, 26 Jun 2007 12:54:19 +0000 Subject: [PATCH] add a highlight action --- openbox/actions/all.c | 1 + openbox/actions/all.h | 1 + openbox/actions/focus.c | 3 +++ openbox/actions/highlight.c | 21 +++++++++++++++++++++ 4 files changed, 26 insertions(+) create mode 100644 openbox/actions/highlight.c diff --git a/openbox/actions/all.c b/openbox/actions/all.c index 51996de8..e034feaa 100644 --- a/openbox/actions/all.c +++ b/openbox/actions/all.c @@ -41,4 +41,5 @@ void action_all_startup() action_movetofromedge_startup(); action_growtoedge_startup(); action_if_startup(); + action_highlight_startup(); } diff --git a/openbox/actions/all.h b/openbox/actions/all.h index fd71e4b1..fc01df90 100644 --- a/openbox/actions/all.h +++ b/openbox/actions/all.h @@ -42,5 +42,6 @@ void action_layer_startup(); void action_movetofromedge_startup(); void action_growtoedge_startup(); void action_if_startup(); +void action_highlight_startup(); #endif diff --git a/openbox/actions/focus.c b/openbox/actions/focus.c index afa5f8ff..de2bd6d5 100644 --- a/openbox/actions/focus.c +++ b/openbox/actions/focus.c @@ -45,10 +45,13 @@ static gboolean run_func(ObActionsData *data, gpointer options) Options *o = options; if (data->client) { +/* ob_debug("button %d focusable %d context %d %d %d\n", data->button, client_mouse_focusable(data->client), data->context, OB_FRAME_CONTEXT_CLIENT, OB_FRAME_CONTEXT_FRAME); +*/ + if (data->button == 0 || client_mouse_focusable(data->client) || (data->context != OB_FRAME_CONTEXT_CLIENT && data->context != OB_FRAME_CONTEXT_FRAME)) diff --git a/openbox/actions/highlight.c b/openbox/actions/highlight.c new file mode 100644 index 00000000..95ba7723 --- /dev/null +++ b/openbox/actions/highlight.c @@ -0,0 +1,21 @@ +#include "openbox/actions.h" +#include "openbox/client.h" + +static gboolean run_func(ObActionsData *data, gpointer options); + +void action_highlight_startup() +{ + actions_register("Highlight", + NULL, NULL, + run_func, + NULL, NULL); +} + +/* Always return FALSE because its not interactive */ +static gboolean run_func(ObActionsData *data, gpointer options) +{ + if (data->client) + client_hilite(data->client, TRUE); + + return FALSE; +} -- 2.45.2