CXWindowsUtil that installs/uninstalls an X error hander.
using that in primary screen, clipboard, and util to ensure
that certain errors don't kill the app.
be accessed now between open()/close(). ownership of the
clipboard is asserted via the empty() method. this parallels
the win32 model (but the win32 code hasn't been updated yet).
refactored X11 clipboard code. moved the bulk of it into
CXWindowsClipboard and moved some comment event handling into
CXWindowsScreen. changed how requests are processed into a
hopefully easier to understand model. added support for getting
clipboard from and sending clipboard to motif (or at least
lesstif) clients. sending to lesstif required a hack to work
around an apparent bug in lesstif.
window. now attaching thread input queues as necessary. shifted
code around so toggling toggle keys is immediately reflected by
secondary screen's keyboard. now setting extended key flag for
keys that need it. fixed handling of shift + caps-lock. added
handling of keys that should distinguish between left and right
but don't. fixed get/set of active window on leave/enter of
primary screen. replaced 1x1 primary window with a full screen
window to work around a problem with losing key events. changed
calculation of mouse move deltas.
also should now work if the first element of a modifier
keymapping is 0. that won't normally be the case but xmodmap
was doing weird things on grace. if the first element is 0
it'll try the second element. if that's also zero then that
modifier will be ignored.
now tries to map ISO_Left_Tab without shift first then falls back
to Tab (note that if ISO_Left_Tab can be mapped but requires a
modifier then the modifier will be added). also changed attempt
to map ISO_Left_Tab as a backup to Tab to request the shift
modifier whether or not the primary screen requested it.
a screen. this allows the secondary screen to set it's
modifier state to match the primary screen's state. this is
not strictly necessary since each keystroke should adjust the
modifier state as needed to get the right result.