54b3884ebaRemoved use of mbrtowc, wcrtomb, and mbsinit. Many platforms didn't support them and the emulated versions were just as good except for a performance problem with excessive locking and unlocking of a mutex. So this also changes IArchString to provide string rather than character conversion so we can lock the mutex once per string rather than once per character.
crs
2004-04-13 19:39:04 +0000
cc577dce7cOops, broke build in launcher on non-win32 platforms.
crs
2004-04-11 20:01:18 +0000
e1027eeb3aMore changes for MSYS/MinGW builds. Added makefile for launcher. Still need hook library and resource compiling.
crs
2004-04-11 19:43:16 +0000
bf2879724fPreliminary support for MSYS/MinGW builds. Doesn't yet build CSynergyHook as a DLL and does not compile or link in the resources for the binaries.
crs
2004-04-11 19:15:09 +0000
530be3ff9dUpdates 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.
crs
2004-04-11 14:58:08 +0000
bede6352c1Fixed 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*.
crs
2004-04-05 21:23:44 +0000
3db9facb6cAdded 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.
crs
2004-04-05 21:10:06 +0000
6d6ebf7926Made hook debug logging print at DEBUG1 rather than INFO level.
crs
2004-04-05 21:08:49 +0000
083607345aRemoved DEPTH, VDEPTH, and VPATH from makefiles.
crs
2004-04-04 12:12:32 +0000
ef908bf0bcChanged version to 1.1.5.
crs
2004-04-04 12:12:30 +0000
bf61301d4cUpdated NEWS and ChangeLog for 1.1.4.
crs
2004-03-31 22:20:27 +0000
d1a60e848eReverted 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.
crs
2004-03-31 22:15:13 +0000
4576b30c37Fixed lookup of hosts by name on win32.
crs
2004-03-31 22:14:15 +0000
4ace26f19bMake 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.
crs
2004-03-31 22:14:01 +0000
4805453190Fixed failure to initialize double tap and wait to switch timeouts.
crs
2004-03-31 22:12:53 +0000
610518104bFixed crash bug in CKeyState. Would deference bogus pointer in isModifierActive if there's an unmapped toggle modifier.
crs
2004-03-30 18:55:58 +0000
ceb654246cChanged version to 1.1.4. This time changing the version before making any other changes.
crs
2004-03-30 18:54:56 +0000
82552698f7Fixed bug in starting (when not testing) synergy from launcher on windows NT. It was trying to start it as a service.
crs
2004-03-28 20:52:49 +0000
3c29242208Updates for Version 1.1.3.
crs
2004-03-28 20:01:16 +0000
8d0a2fa043Forgot file in previous submit.
crs
2004-03-28 20:00:30 +0000
cfb082f306Added 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.
crs
2004-03-28 14:53:01 +0000
97046541b9Fixed keyboard handling on windows 95 family.
crs
2004-03-28 14:07:58 +0000
e50146119fUpdated makefile to reflect renaming of platform files for win32.
crs
2004-03-28 14:07:37 +0000
0f7fa2dfd9Fixed windows 95 family screen saver stuff.
crs
2004-03-28 14:06:40 +0000
bf7643faabChanged debug logging of key IDs to use hex.
crs
2004-03-28 14:05:52 +0000
d2f4cbf002Fixed bugs in installing per-user startup programs on windows 95 family.
crs
2004-03-28 14:05:31 +0000
e2a31e8b66Converted 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.
crs
2004-03-26 20:59:26 +0000
ab11ebea01Fixed 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).
crs
2004-03-26 20:59:21 +0000
8d99fd2511Checkpoint. 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.
crs
2004-03-21 20:01:41 +0000
19559d4b4eUpdated 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.
crs
2004-03-17 20:59:25 +0000
20ba10bfa8Changed 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.
crs
2004-03-14 17:55:53 +0000
03dc45972bImproved 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.
crs
2004-03-13 19:01:27 +0000
83713c6235Fixed error in previous submit.
crs
2004-03-13 18:58:20 +0000
12fa99aee0Fixed 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.
crs
2004-03-13 17:16:24 +0000
8c1af9d53fFixed win32 taskbar icon event handling. Wasn't responding to messages sent via SendMessage (rather than PostMessage).
crs
2004-03-13 17:14:32 +0000
a6e858a208Added win32 support for power management.
crs
2004-03-13 17:13:55 +0000
a1c807ba67Added 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.
crs
2004-03-10 22:03:01 +0000
6c7039490dAdded check for inet_aton and a simple implementation for platforms that are missing it.
crs
2004-03-10 20:35:03 +0000
3920c63af6Removed 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.
crs
2004-03-08 21:18:36 +0000
9e995bedbfWin32 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.
crs
2004-03-08 20:53:32 +0000
f068232643Typecasting fix to compile on old solaris.
crs
2004-03-08 20:45:53 +0000
a27c6ad2c6Server now disables jump zones when scroll lock is active.
crs
2004-03-06 16:20:08 +0000
5593573182Fixed 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.
crs
2004-02-29 21:34:30 +0000
ffa966747bFixed handling of winsock connect event. Was always immediately indicating socket had connected.
crs
2004-02-29 21:33:20 +0000
4ac756fc28Fixed cursor hiding on win32. Still fails occassionally.
crs
2004-02-29 21:32:00 +0000
77dd4c81c4Added reload configuration menu item to win32 task bar.
crs
2004-02-29 21:31:24 +0000
b8606412d6Switched to doxygen comments.
crs
2004-02-29 17:29:01 +0000
c3135b1b1cMoved 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.
crs
2004-02-29 17:28:51 +0000
1ccb92b888Fixed 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.
crs
2004-02-29 16:48:22 +0000
d6ec331b09Made all arch sockets non-blocking.
crs
2004-02-29 16:11:17 +0000
75cafe65a6Enabled running at high priority on windows.
crs
2004-02-28 17:51:55 +0000
82dffeb498Generalized signal handling. Now handling SIGHUP in addition to SIGINT and SIGTERM. Setup SIGHUP to reload the server's configuration.
crs
2004-02-28 17:49:29 +0000
9f7e909361Fixed incorrect accumulation of newlines in log.
crs
2004-02-28 16:06:00 +0000
3dea8f8c5dNow using first set options message as end of handshake.
crs
2004-02-28 16:00:54 +0000
54acf38d82Merged Win32 updates. Added full warnings on g++. Fixed bug in client when handling server rejection.
crs
2004-02-28 12:19:49 +0000
612a2054e6Updated Makefiles and win32 projects and removed dead classes.
crs
2004-02-15 18:12:35 +0000
48908242d2Checkpoint. Conversion to event driven system complete for Unix. Still need to convert win32 platform specific files.
crs
2004-02-15 17:32:11 +0000
1861f21fb5Checkpoint. synergys now works. Still need to do lib/client and synergyc.
crs
2004-02-14 14:04:36 +0000
c44c18bfdcRefactored event queue. The event queue is now separated from the buffer that holds the events and generates system events. This allows us to switch in/out a platform specific event handler as necessary without losing our timers and handlers.
crs
2004-02-08 17:07:11 +0000
3bcdf139a7No longer sending incorrect disconnect events in read() and removed redundant sending of disconnect event in close().
crs
2004-02-08 16:51:45 +0000
848aee7a3aCheckpoint. 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.
crs
2004-02-01 21:09:22 +0000
618aa7feddRemoved 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.
crs
2004-02-01 20:56:52 +0000
4c7e524896Checkpointing centralized event queue stuff. Currently have: an event queue and events, TCP sockets converted to use events, unix multithreading and network stuff converted, and an X Windows event queue subclass.
crs
2004-01-24 16:09:25 +0000
fa215f1b13Merged changes from 1.0 branch, including Japanese keyboard support (thanks to Kazuhide Takahashi).
crs
2003-09-28 11:58:38 +0000
175843b4fbChanged server side of win32 to send ctrl+alt+<key> if the key doesn't map to anything via AltGr. This is an improvement over the previous code which would simply discard the key but it still behaves slightly differently than pressing ctrl+alt+<key> on the server: if that combination is a hotkey on the server then the hotkey is performed, even if the combination is also a valid AltGr combination; on the client, we'll get the AltGr combination in preference to the hotkey.
crs
2003-09-08 19:42:00 +0000
f4d7ea3d7bFixed button mapping. Was returning the physical button instead of the logical button, but XTest wants the logical button. Apparently, the XTest implementation on my mac laptop has it backwards.
crs
2003-09-07 13:08:30 +0000
6d3c536717Fixed potential failure to use synergy's keyboard layout when 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.
crs
2003-09-06 23:17:41 +0000
80f3998398Changed name-to-address translation to only use IPv4 addresses and to only copy as much address as fits in sockaddr_in.sin_addr, in case hostent.h_length is wrong.
crs
2003-09-03 21:54:18 +0000
33e359a384Fixed failure to unlock mutex in CXWindowsScreen::mainLoop() when returning due to a quit event.
crs
2003-09-03 21:49:57 +0000
8395f69899Now leaving client screen or entering server screen if necessary when disabling the screen.
crs
2003-09-03 21:26:52 +0000
a237cbacdbFixed suppression of auto-repeat for keys that don't auto-repeat. Had forgotten to query the auto-repeat per-key mask.
crs
2003-09-03 21:22:25 +0000
9311250c22Fixed uses of X11 display without mutex held.
crs
2003-09-03 21:21:22 +0000
809a347333Removed heap allocation when polling sockets.
crs
2003-09-02 22:06:07 +0000
47ca409ff9Merged primary and secondary screens into one class.
crs
2003-09-02 22:05:47 +0000
4fea7719f3Merged changes from 1.0 branch.
crs
2003-09-02 21:41:00 +0000
2f9cdfd1b2Integrated fixes from 1.0 branch.
crs
2003-08-06 21:09:25 +0000
345de4cd11Integrate fixes from 1.0 branch.
crs
2003-08-03 21:24:45 +0000
221628fd84Checkpoint refactoring. CSecondaryScreen now does the work common across platform secondary screens. X11 screen was compiled and tested but not the win23 screen. Will next change inheritance hierarchy.
crs
2003-07-26 13:41:41 +0000
1030081f7fMerged documentation updates in 1.0 into mainline.
crs
2003-07-19 22:12:54 +0000
b59e105bc4Changed version to 1.1.3.
crs
2003-07-17 21:17:08 +0000
e1985f52c9Fixed handling of a dead key followed by space on win32 and X11. A dead key followed by space should convert the dead key to a regular character.
crs
2003-07-17 21:16:58 +0000
99792b13a5Changed version to 1.1.2.
crs
2003-07-16 22:38:54 +0000
0325de2e12Fixed handling of some non-ASCII but directly mapped characters on win32. The o, a, and u with diaeresis in the german keyboard mapping are examples.
crs
2003-07-16 22:38:43 +0000
b949e108a0Changed version to 1.1.1.
crs
2003-07-16 21:41:09 +0000
9c4267ed11Fixed handling of shift/ctrl/alt on special keys on win32 server.
crs
2003-07-16 21:40:57 +0000
5488b77d61Fixed handling of some keystrokes on win32. Pressing a dead key and then space should convert the dead key to a non-dead key but previous the key was discarded. Fixed that but VkKeyScan() fails in this case so added special case to fix that (assuming AltGr is required). VkKeyScan() can return the wrong result for characters that have more than one virtual key mapped to them. AltGr+9 (^) on the French layout has this problem. Now detecting that problem and using the current keyboard state to decide if AltGr is required.
crs
2003-07-13 20:42:11 +0000
be07a171ccRemoved ignoreNumLock option. It doesn't really seem to be necessary.
crs
2003-07-13 18:14:35 +0000
f6683d3cadForgot to remove --camp and --no-camp from brief usage message.
crs
2003-07-13 17:03:41 +0000
745c5421beChanged XSync() to XFlush() in X windows secondary screen. This doesn't appear to have any negative consequences and may prevent synergy from freezing when some X client (probably the window manager) grabs the server.
crs
2003-07-13 16:57:08 +0000
faff28de44Added 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.
crs
2003-07-12 18:13:36 +0000