Commit Graph

58 Commits

Author SHA1 Message Date
crs 48908242d2 Checkpoint. Conversion to event driven system complete for Unix.
Still need to convert win32 platform specific files.
2004-02-15 17:32:11 +00:00
crs 901a76df0d Minor cleanup. 2004-02-14 16:30:27 +00:00
crs 1861f21fb5 Checkpoint. synergys now works. Still need to do lib/client and
synergyc.
2004-02-14 14:04:36 +00:00
crs 848aee7a3a Checkpoint. Code does not run. Still converting over to new
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.
2004-02-01 21:09:22 +00:00
crs 618aa7fedd Removed most HTTP stuff. It doesn't seem like the appropriate
choice for server control.  May later provide some other means
for controlling the synergy server remotely.
2004-02-01 20:56:52 +00:00
crs 47ca409ff9 Merged primary and secondary screens into one class. 2003-09-02 22:05:47 +00:00
crs be07a171cc Removed ignoreNumLock option. It doesn't really seem to be
necessary.
2003-07-13 18:14:35 +00:00
crs faff28de44 Added ignoreNumLock boolean per-screen option. When true, NumLock
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.
2003-07-12 18:13:36 +00:00
crs b9193ae1bb Fix for new template syntax. 2003-07-05 17:04:06 +00:00
crs d577d457e3 Made double tap require moving farther away from the tapped edge
before arming.  This should reduce spurious double taps.
2003-05-21 19:38:11 +00:00
crs 51919a50e6 Added workaround for when XTest is unaware of Xinerama. When that's
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.
2003-05-17 13:44:24 +00:00
crs 923935060a Fixed jumping to same client screen. It was broken by an earlier
change (probably double tap).  Jumping to the same server screen
worked correctly.
2003-05-08 21:59:35 +00:00
crs ed439ec33c Added global configuration option to disable screen saver
synchronization.
2003-05-03 14:38:36 +00:00
crs 42ea6306f6 Fixes to previous checkpoint. Non-ascii keys seem to work correctly.
Still not supporting key composition on X11.
2003-04-27 18:05:32 +00:00
crs 11f90022e0 Checkpointing improved key handling. This change adds non-ASCII
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).
2003-04-27 17:01:14 +00:00
crs 368d8cae39 Now allowing screen names with underscores. 2003-04-16 20:05:00 +00:00
crs a7e2141ede Added a log message why the user is locked to the screen. 2003-03-17 22:32:01 +00:00
crs 1d17f865ea Added switch delay and double-tap options to win32 and added a
tray icon to the client and server that gives status feedback to
the user and allows the user to kill the app.
2003-03-12 22:34:07 +00:00
crs f411df65fb Added support for a user option to require hitting the edge of a
screen twice within a specified amount of time in order to switch
screens.  This can help prevent unintended switching.
2003-02-23 19:29:08 +00:00
crs 7bbd33d787 Added support on X11 for a global option to delay switching screens
when the mouse reaches a jump zone.
2003-02-22 21:53:25 +00:00
crs aef50800e3 Added global options to CConfig (needed for heartbeat option). 2003-02-22 16:41:03 +00:00
crs 366537dc22 Added support for heartbeat global option. 2003-02-22 16:20:23 +00:00
crs 5f164375d4 Changes to support remapping modifier keys on clients. 2003-02-22 15:03:31 +00:00
crs 6b3e451b83 Added ability to set screen options from the windows launch dialog. 2003-01-25 13:34:51 +00:00
crs 24c0b3fd32 Fixed lookup of neighbor screens. The first problem was an old
code in a conditional for moving left that blew an assert verifying
that the mouse position was really on the screen if the neighbor
screen wasn't connected.

After that was fixed there was another problem when one screen
linked to another which then linked (in the same direction) to
itself.  If the latter screen wasn't connected then it'd get into
an infinite loop.
2003-01-16 21:28:15 +00:00
crs a8bd4e7ff0 Moved log message into conditionals so it only appears when the
conditions are true.
2003-01-14 19:46:41 +00:00
crs 6c56f8a9fc Removed unnecessary variable names. 2003-01-12 16:35:11 +00:00
crs b2e11d3d35 Now catching and ignoring errors when writing to a socket in those
cases where errors were not being caught, typically when responding
to some other socket or protocol error.
2003-01-12 16:08:45 +00:00
crs e9cc0b434e Moved CPrimaryScreen and CSecondaryScreen to the lib/synergy
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.
2003-01-05 21:48:54 +00:00
crs f65921bc3f Refactored some platform dependent code into a new library,
lib/arch.  This should make porting easier.  Will probably
continue to refactor a little more, moving platform dependent
event handling stuff into lib/platform.
2003-01-04 22:01:32 +00:00
crs 22457c78fe Made synrgyhk.dll error messages less cryptic. 2002-12-25 22:56:09 +00:00
crs 1eb2ed2d3f No longer sending options if there aren't any and no longer
sending a reset before sending options (the caller can do
that if necessary).
2002-12-23 14:49:14 +00:00
crs 3fc1ddf6ce Added support for per-screen options in the configuration file
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.
2002-12-23 13:55:21 +00:00
crs 2559dd2f05 Now ignoring half-duplex keys that are down when deciding if
the mouse is locked to the screen.  We can't tell if a half-
duplex key is physically down and logically down just means
it's active so there's no point in letting it lock the mouse
to the screen.
2002-12-15 22:17:18 +00:00
crs 2128302307 Fixed loss of ctrl+alt when transmitted to non-windows platforms
from a windows server.  Was converting ctrl+alt on windows to
mode switch on the server.  No longer doing that;  windows clients
will interpret ctrl+alt as AltGr and other clients will just see
ctrl+alt.  Also made the right alt key mode switch on windows
servers in case the user wants to force a mode switch, but that
means the right alt key no longer acts as alt on clients.
2002-12-15 20:00:52 +00:00
crs 9102fb80b9 Ported recent changes to win32 and fixed CRLF problems with project
files (most had CRCRCRLF).
2002-10-29 22:07:55 +00:00
crs 1d7f3d2aaf Changed server to fail with an error if in can't bind() the listen
socket for any reason other than it's in use.
2002-10-17 21:37:31 +00:00
crs d9c622ae04 CConfig now accepts and discards \r at the end of a line. This
allows the unix server to read configuration files created on
microsoft windows platforms.
2002-10-15 22:17:41 +00:00
crs a18b1462cf Fixed use of %s instead of %{1} in format() call. 2002-10-15 22:08:10 +00:00
crs c405c58c64 Renamed XThreadUnavailable to XMTThreadUnavailable and derived it
from XBase so it can be caught normally.  Changed client and server
to handle unavailable threads (in main loop, anyway).
2002-10-15 22:01:41 +00:00
crs d8dde48c2b Changed log() and logc() macros to LOG() and LOGC(), respectively.
This avoids a conflict with the standard math library log()
function.
2002-10-15 21:29:44 +00:00
crs 5e4289dc80 now logging bind failures as warnings. 2002-09-14 20:56:50 +00:00
crs 4586f88188 Rewrote handling of key press on X11 client; it should be much
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.
2002-09-14 12:07:02 +00:00
crs a729e33cfb Fixed win32 config saving, keyboard mapping, and AltGr bugs.
Made extensive changes to the launcher to provide more control
over setting up auto-start and it now saves configuration to
the user's documents directory if auto-starting at login and
saves to the system directory if auto-starting at boot.
Replaced MapVirtualKey() with table lookup to work around that
function's lack of support for extended keyboard scan codes.
Added first cut at support for AltGr.
2002-09-02 17:30:04 +00:00
crs cc8272e258 work around to get mode switch working. 2002-09-01 16:45:44 +00:00
crs 3295705f97 checkpoint. trying to add support for mode switch key to X11
screens.
2002-09-01 15:30:00 +00:00
crs 7b3999b166 fixed win32 deadlock. when a client disconnects the server will
warp the mouse to the primary screen.  entering the primary
screen causes the primary screen's window to be hidden.  the
deadlock occurs because hiding the window seems to post a
message then wait for it to be handled (or possibly it won't
send a message while a posted message is being handled).
thread A locks the mutex, warps the mouse, the hides the window.
thread B begins processing the mouse warp then tries to lock
the mutex.  thread A is waiting on the event loop owned by B
while B is waiting on the mutex owned by A.  this fix simply
hides the window asynchronously.  however, there may be other
ways to cause a similar deadlock that have not been found.
2002-08-18 17:40:10 +00:00
crs a4db7f0005 fixed PrintScrn handling; it was being changed to keypad multiply. 2002-08-18 17:35:10 +00:00
crs 435bb738e6 added win32 launcher program. also changed VC++ dsp and dsw
files to binary form so \r\n aren't converted.  added icons
to client and server apps on win32.
2002-08-11 11:49:36 +00:00
crs f6c3a9453b added copyright to top of each file. 2002-08-02 19:57:46 +00:00