Unverified Commit a8c65ab6 authored by Mike Gabriel's avatar Mike Gabriel

Merge branch 'uli42-pr/improve_keyboard2' into 3.6.x

parents ab3e1485 a70ec920
......@@ -117,8 +117,9 @@ void nxagentEnableXkbExtension(void);
void nxagentTuneXkbWrapper(void);
void nxagentResetKeycodeConversion(void);
void nxagentKeycodeConversionSetup(void);
Bool nxagentGetRemoteXkbExtension(void);
#endif
CARD8 nxagentConvertKeycode(CARD8 k);
......
......@@ -584,6 +584,9 @@ Bool nxagentReconnectSession(void)
goto nxagentReconnectError;
}
/* Update remote XKB information */
nxagentGetRemoteXkbExtension();
/* if there's no keyboard definition in the options file
restore the previous value. */
#ifdef DEBUG
......@@ -598,7 +601,8 @@ Bool nxagentReconnectSession(void)
if (nxagentOption(ResetKeyboardAtResume) == 1 &&
(nxagentKeyboard == NULL || nxagentOldKeyboard == NULL ||
strcmp(nxagentKeyboard, nxagentOldKeyboard) != 0 ||
strcmp(nxagentKeyboard, "query") == 0))
strcmp(nxagentKeyboard, "query") == 0 ||
strcmp(nxagentKeyboard, "clone") == 0))
{
if (nxagentResetKeyboard() == 0)
{
......@@ -616,7 +620,7 @@ Bool nxagentReconnectSession(void)
}
else
{
nxagentResetKeycodeConversion();
nxagentKeycodeConversionSetup();
}
nxagentXkbState.Initialized = 0;
......
......@@ -525,8 +525,8 @@ don't reset keyboard device if the session is resumed
this is only relevant if you also specify \-keyboard=query. In that
case \fBnxagent\fR will lock the keyboard settings and clients will
get an error when trying to change keyboard settings via
XKEYBOARD. With \-noxkblock the lock is not applied and clients can
change the keyboard settings through XKEYBOARD.
XKEYBOARD. With \-noxkblock the lock is not applied and clients are
allowed change the keyboard settings through XKEYBOARD.
.TP 8
.B \-tile WxH
size of image tiles (minimum allowed: 32x32)
......@@ -603,7 +603,7 @@ start or resume a session in fullscreen mode (default: off)
.TP 8
.B keyboard=<string> or kbtype=<string>
.BR query | <model>/<layout>
.BR query | clone | <model>/<layout> | rmlvo/<rules>#<model>#<layout>#<variant>#<options>
.RS 8
.TP 8
......@@ -617,10 +617,22 @@ this platform. Note that in this case XKEYBOARD will always report
the default layout which will most likely not match the experienced
settings.
.TP 8
.I clone
ask the real X server for the keyboard settings using XKEYBOARD
protocol functions and clone them. This is the recommended setting. For
compatibility reasons it is not the default.
.TP 8
.I <model>/<layout>
use the given model and layout. You can not modify keyboard rules,
variant or options. Instead preset values are used. These are
variant or options this way. Instead preset values are used. These are
\fIbase\fR for rules and empty strings for variant and options.
.TP 8
.I rmlvo/<rules>#<model>#<layout>#<variant>#<options>
configure the keyboard according to the rmlvo
(Rules+Model+Layout+Variant+Options) description given after the / and
separated by #. This can be used to fully pass the keyboard
configuration of \fBnxagent\fR right after the start. Example:
rmlvo/base#pc105#de,us#nodeadkeys#lv3:rwin_switch
.RE
.TP 8
......
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