Restructure Xvnc/libvnc.so code to avoid C++ header hacks
The internal Xorg headers are very incompatible with C++ and we've had
to resort to all kinds of hacks in order to include them in our C++
code. This approach isn't really viable long term so restructure things
so that we have a glue layer written in C that bridges the Xorg core
with the RFB classes.
Some applications (e.g. wine and rdesktop) tend to misbehave
when we use fake shift to get different symbols on the numpad.
So avoid using fake shifts on NumLock related keys and hope
that other applications won't get upset by getting the
non-numpad keysym counterparts.
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@5119 3789f03b-4d11-0410-bbf8-ca57d06f2519
Even if we ignore the modifiers, we still have to respect
the active group when we go looking for the level 3 shift key.
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@5117 3789f03b-4d11-0410-bbf8-ca57d06f2519
Adding normal alphabetic keysyms as ONE_LEVEL did not behave
correctly when CapsLock is active, so start using the ALPHABETIC
type for those instead.
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@5109 3789f03b-4d11-0410-bbf8-ca57d06f2519
XkbTranslateKeyCode() is not implemented according to
specification in any system I can find, so change our code
to follow reality rather than specification.
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@5106 3789f03b-4d11-0410-bbf8-ca57d06f2519
Not sure what I was smoking when I wrote this. You need
to provide both pointers, even if you are just interested
in the upper case symbol.
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@5105 3789f03b-4d11-0410-bbf8-ca57d06f2519
Major rewrite of the keyboard code. The old code was too focused on
the old core X11 keyboards. The new code has an abstract common section,
and two different backends for core and XKB. Core keyboards should be
unaffected, but XKB support should be much better with this approach.
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@5075 3789f03b-4d11-0410-bbf8-ca57d06f2519