Commit 8bf3429b authored by Ulrich Sibiller's avatar Ulrich Sibiller Committed by Mike Gabriel

nxagent: Make autograb an nxagentOption.

parent 58183b7c
......@@ -674,8 +674,6 @@ static void nxagentSwitchDeferMode(void)
}
}
static Bool autograb = False;
static void nxagentEnableAutoGrab(void)
{
#ifdef DEBUG
......@@ -683,7 +681,7 @@ static void nxagentEnableAutoGrab(void)
#endif
nxagentGrabPointerAndKeyboard(NULL);
autograb = True;
nxagentChangeOption(AutoGrab, True);
}
static void nxagentDisableAutoGrab(void)
......@@ -693,7 +691,7 @@ static void nxagentDisableAutoGrab(void)
#endif
nxagentUngrabPointerAndKeyboard(NULL);
autograb = False;
nxagentChangeOption(AutoGrab, False);
}
static void nxagentToggleAutoGrab(void)
......@@ -702,7 +700,7 @@ static void nxagentToggleAutoGrab(void)
if (nxagentOption(Rootless) || nxagentOption(Fullscreen))
return;
if (!autograb)
if (!nxagentOption(AutoGrab))
nxagentEnableAutoGrab();
else
nxagentDisableAutoGrab();
......@@ -1560,7 +1558,7 @@ FIXME: Don't enqueue the KeyRelease event if the key was
}
/* FIXME: only when in windowed mode! */
if (autograb)
if (nxagentOption(AutoGrab))
{
if (X.xfocus.window == nxagentDefaultWindows[0] && X.xfocus.mode == NotifyNormal)
{
......@@ -1648,7 +1646,7 @@ FIXME: Don't enqueue the KeyRelease event if the key was
#endif /* NXAGENT_FIXKEYS */
if (autograb)
if (nxagentOption(AutoGrab))
{
XlibWindow w;
int revert_to;
......
......@@ -172,6 +172,8 @@ void nxagentInitOptions(void)
nxagentOptions.ReconnectTolerance = DEFAULT_TOLERANCE;
nxagentOptions.KeycodeConversion = DEFAULT_KEYCODE_CONVERSION;
nxagentOptions.AutoGrab = False;
}
/*
......
......@@ -450,6 +450,13 @@ typedef struct _AgentOptions
* Convert evdev keycodes to pc105.
*/
KeycodeConversionMode KeycodeConversion;
/*
* True if agent should grab the input in windowed mode whenever the
* agent window gets the focus
*/
int AutoGrab; /* Should be Bool but I do not want to include Xlib.h here */
} AgentOptionsRec;
typedef AgentOptionsRec *AgentOptionsPtr;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment