Commit Graph

3237 Commits

Author SHA1 Message Date
crs 530be3ff9d Updates to support OS X. This improves support for building on
multiple systems with automake, with X Windows and Carbon window
system APIs supported.  It's also a starting port for supporting
win32 builds using mingw.  OS X support is incomplete;  the tree
will compile and link but the binaries will not function.
2004-04-11 14:58:08 +00:00
crs 619dd75f0d Added missing initialization of mutex attribute call. 2004-04-06 22:09:38 +00:00
crs bede6352c1 Fixed bug in handling rejection of screen with name that's already
in use.  The client was being correctly rejected but the already
connected client was being forcefully disconnected too because the
client to disconnect was found by looking up the client by name.
We now instead look up the client by IClient*.
2004-04-05 21:23:44 +00:00
crs 3db9facb6c Added workaround for win32 low-level mouse hook position weirdness.
The low-level hook can report mouse positions outside the boundaries
of the screen and bogus retrograde motion.  This messes up switch on
double tap.  This change attempts to detect and suppress the bogus
events.
2004-04-05 21:10:06 +00:00
crs 6d6ebf7926 Made hook debug logging print at DEBUG1 rather than INFO level. 2004-04-05 21:08:49 +00:00
crs 083607345a Removed DEPTH, VDEPTH, and VPATH from makefiles. 2004-04-04 12:12:32 +00:00
crs ef908bf0bc Changed version to 1.1.5. 2004-04-04 12:12:30 +00:00
crs 398ea44c20 Minor win32 installer tweaks. 2004-03-31 22:30:49 +00:00
crs bf61301d4c Updated NEWS and ChangeLog for 1.1.4. 2004-03-31 22:20:27 +00:00
crs d1a60e848e Reverted task bar code to 1.0.15 version. That used a window in
its own thread for handling messages.  It seems to fix most of
the task bar bugs but there's still an hourglass cursor on NT
when using the popup menu.
2004-03-31 22:15:13 +00:00
crs 4576b30c37 Fixed lookup of hosts by name on win32. 2004-03-31 22:14:15 +00:00
crs 4ace26f19b Make screen drop down lists longer in the launcher. They're now
long enough for the scroll bar to show up properly (with the
thumb) and they have enough space for 6 screens without needing
the scroll bar.
2004-03-31 22:14:01 +00:00
crs 4805453190 Fixed failure to initialize double tap and wait to switch timeouts. 2004-03-31 22:12:53 +00:00
crs 610518104b Fixed crash bug in CKeyState. Would deference bogus pointer in
isModifierActive if there's an unmapped toggle modifier.
2004-03-30 18:55:58 +00:00
crs ceb654246c Changed version to 1.1.4. This time changing the version before
making any other changes.
2004-03-30 18:54:56 +00:00
crs 82552698f7 Fixed bug in starting (when not testing) synergy from launcher
on windows NT.  It was trying to start it as a service.
2004-03-28 20:52:49 +00:00
crs 3c29242208 Updates for Version 1.1.3. 2004-03-28 20:01:16 +00:00
crs 8d0a2fa043 Forgot file in previous submit. 2004-03-28 20:00:30 +00:00
crs 2963372089 Added win32 installer project. 2004-03-28 20:00:00 +00:00
crs cfb082f306 Added ISO_Level3_Shift as a synonym for Mode_switch. I've no idea
if this will work as hoped but I've seen documentation that XFree
4.3 uses ISO_Level3_Shift rather than Mode_switch.
2004-03-28 14:53:01 +00:00
crs 97046541b9 Fixed keyboard handling on windows 95 family. 2004-03-28 14:07:58 +00:00
crs e50146119f Updated makefile to reflect renaming of platform files for win32. 2004-03-28 14:07:37 +00:00
crs 0f7fa2dfd9 Fixed windows 95 family screen saver stuff. 2004-03-28 14:06:40 +00:00
crs bf7643faab Changed debug logging of key IDs to use hex. 2004-03-28 14:05:52 +00:00
crs d2f4cbf002 Fixed bugs in installing per-user startup programs on windows 95
family.
2004-03-28 14:05:31 +00:00
crs e2a31e8b66 Converted win32 to new keyboard state tracking design. Also
changed locking to screen so that keys no longer count (only
mouse buttons and scroll lock toggled on).  This is to deal
with the unreliability of key event reporting which can leave
us locked to a screen with no key physically pressed.  The
result of this is that clients get key repeats and releases
without the corresponding key press.  CKeyState handles this
by discarding repeat/release events on keys it hasn't seen go
down.  Also made a few other minor fixes to win32 keyboard
handling.
2004-03-26 20:59:26 +00:00
crs ab11ebea01 Fixed handling of reading strings from the registry. This was
broken when support for binary data was added.  The terminating
NUL was included in the string as a character (that's in addition
to the terminating NUL added by std::string).
2004-03-26 20:59:21 +00:00
crs 8d99fd2511 Checkpoint. Converted X11 to new keyboard state tracking design.
This new design is simpler.  For keyboard support, clients need only
implement 4 virtual methods on a class derived from CKeyState and
one trivial method in the class derived from CPlatformScreen, which
is now the superclass of platform screens instead of IPlatformScreen.
Keyboard methods have been removed from IPlatformScreen, IPrimaryScreen
and ISecondaryScreen.  Also, all keyboard state tracking is now in
exactly one place (the CKeyState subclass) rather than in CScreen,
the platform screen, and the key mapper.  Still need to convert Win32.
2004-03-21 20:01:41 +00:00
crs 19559d4b4e Updated keyboard handling on win32. Still needs some work to
avoid shadowing key state in multiple places.  Also got locked
to screen and reported key appeared to be wrong.
2004-03-17 20:59:25 +00:00
crs 20ba10bfa8 Changed how key state is tracked on X11. Now updating key state
on every key press and release so we don't have to updateKeys()
in isLockedToScreen().  However, if any key appears to be down
we still call updateKeys() to double check that it's really down.
If not we note the spurious lock and don't lock to the screen.
2004-03-14 17:55:53 +00:00
crs 6f19fcfe39 Fixed doxygen formatting error. 2004-03-14 17:50:37 +00:00
crs 03dc45972b Improved handling of active window on win32. Synergy no longer
takes activation so the previously active window doesn't pop to
the top of the window stack when it regains activation.  One
drawback of this is that the mouse cursor isn't shown when
a window (other than synergy's) is activated.  However, synergy
does detect mouse motion as before and shows the cursor when it
sees any.
2004-03-13 19:01:27 +00:00
crs 83713c6235 Fixed error in previous submit. 2004-03-13 18:58:20 +00:00
crs 12fa99aee0 Fixed handling of handshake complete. Was posting an event for it
but making direct calls for other messages from the server.  This
could cause messages to be handled out of order.  Now making a
direct call for handshake complete.
2004-03-13 17:16:24 +00:00
crs 8c1af9d53f Fixed win32 taskbar icon event handling. Wasn't responding to
messages sent via SendMessage (rather than PostMessage).
2004-03-13 17:14:32 +00:00
crs a6e858a208 Added win32 support for power management. 2004-03-13 17:13:55 +00:00
crs a1c807ba67 Added support for DPMS in X11 screen saver. DPMS is the extension
that allows you to power down the display.  Previously, synergy
would not power on the display if DPMS was enabled and activated
and xscreensaver was not running.  It also wouldn't disable DPMS
so the display would power down normally on a synergy client if
there was no input activity.
2004-03-10 22:03:01 +00:00
crs 6c7039490d Added check for inet_aton and a simple implementation for platforms
that are missing it.
2004-03-10 20:35:03 +00:00
crs 3920c63af6 Removed dependency on X11/XF86keysym.h. There are several versions
of that file in existance, not all of which have all the symbols we
require and none of which provide any convenient means of telling
what groups of symbols they define.
2004-03-08 21:18:36 +00:00
crs 9e995bedbf Win32 fixes. Fixed slightly off cursor positioning when using
absolute mouse_event().  Improved keyboard handling:  now using
keyboard layout of last foreground window when leaving server
so users can meaningfully choose the locale, moved dead key
handling into hook library so there should be no more race
conditions involving the keyboard dead key buffer, simplified
keyboard and cursor handling by using a full screen transparent
window when not using low level hooks, fixed error in restoring
buffered dead key when checking for dead keys.  This hopefully
fixes all known keyboard bugs on win32.
2004-03-08 20:53:32 +00:00
crs f068232643 Typecasting fix to compile on old solaris. 2004-03-08 20:45:53 +00:00
crs a27c6ad2c6 Server now disables jump zones when scroll lock is active. 2004-03-06 16:20:08 +00:00
crs 5593573182 Fixed processing of events. Was waking up on a sent (rather than
posted) message but then blocking in GetMessage() which handles
the sent message directly.  No longer blocking on sent messages.
2004-02-29 21:34:30 +00:00
crs ffa966747b Fixed handling of winsock connect event. Was always immediately
indicating socket had connected.
2004-02-29 21:33:20 +00:00
crs 4ac756fc28 Fixed cursor hiding on win32. Still fails occassionally. 2004-02-29 21:32:00 +00:00
crs 77dd4c81c4 Added reload configuration menu item to win32 task bar. 2004-02-29 21:31:24 +00:00
crs 8f083a2e65 Fixed comment. 2004-02-29 17:36:32 +00:00
crs b8606412d6 Switched to doxygen comments. 2004-02-29 17:29:01 +00:00
crs c3135b1b1c Moved clipboard changed event to CClientProxy because only it
and CServer use it.  CServerProxy instead makes a direct call
to CClient, like it does for most other messages.
2004-02-29 17:28:51 +00:00
crs 1ccb92b888 Fixed BSD unblockPollSocket(). Was signaling to break out of
poll() but there was a race condition where the thread trying
to unblock poll() could send the signal before the polling
thread had entered poll().  Now using a pipe and polling on
that and the client's sockets, and just writing a byte into
the pipe to unblock poll.  This persists until the next call
to poll() so we might force poll() to return once unnecessarily
but that's not a problem.  This change makes the BSD code
similar to the winsock code, which uses a winsock event instead
of a pipe.
2004-02-29 16:48:22 +00:00