From 5b6f3c6f7a0e4f1efe3c90865226f02ffa03ca9e Mon Sep 17 00:00:00 2001 From: Dana Jansens Date: Thu, 11 Feb 2010 14:39:09 -0500 Subject: [PATCH] pass an input context to the interactive input function --- openbox/actions.c | 1 + openbox/actions.h | 8 +++++--- openbox/actions/cyclewindows.c | 2 ++ openbox/actions/desktop.c | 2 ++ openbox/actions/directionalwindows.c | 2 ++ 5 files changed, 12 insertions(+), 3 deletions(-) diff --git a/openbox/actions.c b/openbox/actions.c index 35d5cc25..2c60ba40 100644 --- a/openbox/actions.c +++ b/openbox/actions.c @@ -397,6 +397,7 @@ gboolean actions_interactive_input_event(XEvent *e) gboolean used = FALSE; if (interactive_act) { if (!interactive_act->i_input(interactive_initial_state, e, + grab_input_context(), interactive_act->options, &used)) { used = TRUE; /* if it cancelled the action then it has to of diff --git a/openbox/actions.h b/openbox/actions.h index a56ece39..e03bc577 100644 --- a/openbox/actions.h +++ b/openbox/actions.h @@ -19,6 +19,7 @@ #include "misc.h" #include "frame.h" #include "obt/xml.h" +#include "obt/keyboard.h" #include #include @@ -43,9 +44,10 @@ typedef void (*ObActionsShutdownFunc)(void); typedef gboolean (*ObActionsIPreFunc)(guint initial_state, gpointer options); typedef void (*ObActionsIPostFunc)(gpointer options); typedef gboolean (*ObActionsIInputFunc)(guint initial_state, - XEvent *e, - gpointer options, - gboolean *used); + XEvent *e, + ObtIC *ic, + gpointer options, + gboolean *used); typedef void (*ObActionsICancelFunc)(gpointer options); typedef gpointer (*ObActionsIDataSetupFunc)(xmlNodePtr node, ObActionsIPreFunc *pre, diff --git a/openbox/actions/cyclewindows.c b/openbox/actions/cyclewindows.c index 6619b387..782a4c60 100644 --- a/openbox/actions/cyclewindows.c +++ b/openbox/actions/cyclewindows.c @@ -43,6 +43,7 @@ static void free_func(gpointer options); static gboolean run_func(ObActionsData *data, gpointer options); static gboolean i_input_func(guint initial_state, XEvent *e, + ObtIC *ic, gpointer options, gboolean *used); static void i_cancel_func(gpointer options); @@ -169,6 +170,7 @@ static gboolean run_func(ObActionsData *data, gpointer options) static gboolean i_input_func(guint initial_state, XEvent *e, + ObtIC *ic, gpointer options, gboolean *used) { diff --git a/openbox/actions/desktop.c b/openbox/actions/desktop.c index 59aae832..a2d4be29 100644 --- a/openbox/actions/desktop.c +++ b/openbox/actions/desktop.c @@ -43,6 +43,7 @@ static gboolean run_func(ObActionsData *data, gpointer options); static gboolean i_pre_func(guint state, gpointer options); static gboolean i_input_func(guint initial_state, XEvent *e, + ObtIC *ic, gpointer options, gboolean *used); static void i_post_func(gpointer options); @@ -297,6 +298,7 @@ static gboolean run_func(ObActionsData *data, gpointer options) static gboolean i_input_func(guint initial_state, XEvent *e, + ObtIC *ic, gpointer options, gboolean *used) { diff --git a/openbox/actions/directionalwindows.c b/openbox/actions/directionalwindows.c index c5b908bb..e8410c96 100644 --- a/openbox/actions/directionalwindows.c +++ b/openbox/actions/directionalwindows.c @@ -32,6 +32,7 @@ static void free_func(gpointer options); static gboolean run_func(ObActionsData *data, gpointer options); static gboolean i_input_func(guint initial_state, XEvent *e, + ObtIC *ic, gpointer options, gboolean *used); static void i_cancel_func(gpointer options); @@ -254,6 +255,7 @@ static gboolean run_func(ObActionsData *data, gpointer options) static gboolean i_input_func(guint initial_state, XEvent *e, + ObtIC *ic, gpointer options, gboolean *used) { -- 2.44.0