event loop model. Streams, stream filters, and sockets are
converted. Client proxies are almost converted. CServer is
in progress. Removed all HTTP code. Haven't converted the
necessary win32 arch stuff.
using low-level keyboard hooks, fixed handling of the global
keyboard layout dead key buffer, fixed identification of dead
keys, fixed synthesis of AltGr (now using right-alt instead
of left-alt), now using VK_DECIMAL for Separator key, fixed
bug where an unmappable key was treated as virtual key 0xff,
and added support for shift-space (shift was being discarded).
Also fixed failure to hide cursor when leaving primary screen
and added support for handling PrintScreen key.
is ignored on that client (it has no effect on the server). This
is useful for keyboards that don't have separate number pads and
the user often uses the client's keyboard directly, when turning
on NumLock interferes with normal typing.
true, faking a mouse motion outside screen 0 is clamped onto screen 0.
When the workaround is enabled, we use XWarpPointer() instead of an
XTest fake motion. This isn't perfect but the only real fix requires
patching XTest.
Some users requested this. Also, the hider window is mapped before
warping the mouse so the active window shouldn't change if the focus
policy is point-to-focus. Showing the window first can also reduce
the likelihood of seeing the cursor briefly in its hidden position.
realtime priority). After some testing it appears that anything
less than this can starve synergy in some circumstances, preventing
it from forwarding messages to clients. This is a rather risky
change since synergy can now virtually take over a system if it
behaves badly. This change only affects windows systems since
lib/arch of other platforms don't yet attempt to boost priority.
key handling to win32 on both client and server. It also changes
the protocol and adds code to ensure every key pressed also gets
released and that that doesn't get confused when the KeyID for
the press is different from the KeyID of the release (or repeat).
and the platform specific implementations to lib/platform.
Added an lib/arch method to query the platform's native wide
character encoding and changed CUnicode to use it. All
platform dependent code is now in lib/arch, lib/platform,
and the programs under cmd. Also added more documentation.
lib/arch. This should make porting easier. Will probably
continue to refactor a little more, moving platform dependent
event handling stuff into lib/platform.
and sending those options to the appropriate client screens.
Currently, two options are supported: halfDuplexCapsLock and
halfDuplexNumLock mark the caps lock and num lock keys,
respectively, as being half-duplex.
more robust now. Also added handling of Super modifier key and
changed windows keys to map to Super instead of Meta, which is
the default on my keyboard.
from config.h if available (which means version is now a
string, not three integers). Changed version to 1.0.0 and
protocol version to 1.0. And added MAINTAINERCLEANFILES
to makefiles to remove generated files.
would fail to open in such a way that it could never succeed
but it'd never stop retrying. now terminating when open fails
such that it'll never succeed.
synergy.cpp and server.cpp into cmd/synergyd as synergyd.cpp.
Moved and renamed related files. Moved remaining source files
into lib/.... Modified and added makefiles as appropriate.
Result is that library files are under lib with each library
in its own directory and program files are under cmd with each
command in its own directory.