Commit Graph

  • fdf4b2604d Fixed X11 BMP and other bitmap conversion. Had data alignment problems. crs 2004-05-03 21:14:01 +0000
  • 4b212ad704 Added image/bmp and text/html support to X11. crs 2004-05-02 21:31:19 +0000
  • 500362d5c0 Relative mouse motion for OS X. crs 2004-05-02 16:13:11 +0000
  • a1bd77f91a Used MouseKeys accessibility function to show the mouse cursor on a secondary screen when there's no physical mouse attached to the system. Kinda flaky when a mouse is attached or detached but seems to work well enough when the device is not attached to start with and not attached while running synergy. crs 2004-05-02 16:06:04 +0000
  • 423dd3b718 Added support for daemon startup dependencies. Made synergy dependent on NetBT, which I hope is right. crs 2004-05-02 16:01:59 +0000
  • d97879b25c Fixed comment about canonical bitmap clipboard format. crs 2004-05-02 16:00:45 +0000
  • d84e5a26be Added win32 clipboard support for images and HTML. Still need X11 support. crs 2004-05-02 08:04:48 +0000
  • 9c35a45a2c Added relative mouse move support to win32. crs 2004-05-02 08:04:15 +0000
  • 0f45face21 Forgot to change the client to handle relative moves. crs 2004-05-02 08:03:49 +0000
  • fddf7d04a3 X11 clipboard logging now also prints atom names, not just numbers. crs 2004-05-01 16:10:09 +0000
  • 3758d9d282 Added files forgotten in previous checkin. crs 2004-05-01 15:19:53 +0000
  • 16110acaa2 Added support for a global relative mouse motion option. When true and on a secondary screen and locked to the screen (via scroll lock) mouse motion is sent as motion deltas. When true and scroll lock is toggled off the mouse is warped to the secondary screen's center so the server knows where it is. This option is intended to support games and other programs that repeatedly warp the mouse to the center of the screen. This change adds general and X11 support but not win32. The option name is "relativeMouseMoves". crs 2004-05-01 15:18:59 +0000
  • 320cc754a2 Better fixes for compiling on FreeBSD and OpenBSD. crs 2004-05-01 12:11:28 +0000
  • 975d888d65 Fixes for FreeBSD. crs 2004-05-01 11:01:40 +0000
  • 165c889c5d Fixes to compile on solaris 9 using g++. crs 2004-05-01 10:12:06 +0000
  • dcfe49ef48 Fixed regression where cursor wasn't locked to screen when a mouse button is down on win32. crs 2004-05-01 08:56:24 +0000
  • 4d2d4a2171 Fixed type cast warnings. crs 2004-05-01 08:54:42 +0000
  • 54b3884eba Removed 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
  • cc577dce7c Oops, broke build in launcher on non-win32 platforms. crs 2004-04-11 20:01:18 +0000
  • e1027eeb3a More changes for MSYS/MinGW builds. Added makefile for launcher. Still need hook library and resource compiling. crs 2004-04-11 19:43:16 +0000
  • bf2879724f Preliminary 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
  • 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. crs 2004-04-11 14:58:08 +0000
  • 619dd75f0d Added missing initialization of mutex attribute call. crs 2004-04-06 22:09:38 +0000
  • 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*. crs 2004-04-05 21:23:44 +0000
  • 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. crs 2004-04-05 21:10:06 +0000
  • 6d6ebf7926 Made hook debug logging print at DEBUG1 rather than INFO level. crs 2004-04-05 21:08:49 +0000
  • 083607345a Removed DEPTH, VDEPTH, and VPATH from makefiles. crs 2004-04-04 12:12:32 +0000
  • ef908bf0bc Changed version to 1.1.5. crs 2004-04-04 12:12:30 +0000
  • 398ea44c20 Minor win32 installer tweaks. crs 2004-03-31 22:30:49 +0000
  • bf61301d4c Updated NEWS and ChangeLog for 1.1.4. crs 2004-03-31 22:20:27 +0000
  • 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. crs 2004-03-31 22:15:13 +0000
  • 4576b30c37 Fixed lookup of hosts by name on win32. crs 2004-03-31 22:14:15 +0000
  • 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. crs 2004-03-31 22:14:01 +0000
  • 4805453190 Fixed failure to initialize double tap and wait to switch timeouts. crs 2004-03-31 22:12:53 +0000
  • 610518104b Fixed 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
  • ceb654246c Changed version to 1.1.4. This time changing the version before making any other changes. crs 2004-03-30 18:54:56 +0000
  • 82552698f7 Fixed 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
  • 3c29242208 Updates for Version 1.1.3. crs 2004-03-28 20:01:16 +0000
  • 8d0a2fa043 Forgot file in previous submit. crs 2004-03-28 20:00:30 +0000
  • 2963372089 Added win32 installer project. crs 2004-03-28 20:00:00 +0000
  • 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. crs 2004-03-28 14:53:01 +0000
  • 97046541b9 Fixed keyboard handling on windows 95 family. crs 2004-03-28 14:07:58 +0000
  • e50146119f Updated makefile to reflect renaming of platform files for win32. crs 2004-03-28 14:07:37 +0000
  • 0f7fa2dfd9 Fixed windows 95 family screen saver stuff. crs 2004-03-28 14:06:40 +0000
  • bf7643faab Changed debug logging of key IDs to use hex. crs 2004-03-28 14:05:52 +0000
  • d2f4cbf002 Fixed bugs in installing per-user startup programs on windows 95 family. crs 2004-03-28 14:05:31 +0000
  • 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. crs 2004-03-26 20:59:26 +0000
  • 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). crs 2004-03-26 20:59:21 +0000
  • 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. crs 2004-03-21 20:01:41 +0000
  • 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. crs 2004-03-17 20:59:25 +0000
  • 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. crs 2004-03-14 17:55:53 +0000
  • 6f19fcfe39 Fixed doxygen formatting error. crs 2004-03-14 17:50:37 +0000
  • 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. crs 2004-03-13 19:01:27 +0000
  • 83713c6235 Fixed error in previous submit. crs 2004-03-13 18:58:20 +0000
  • 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. crs 2004-03-13 17:16:24 +0000
  • 8c1af9d53f Fixed win32 taskbar icon event handling. Wasn't responding to messages sent via SendMessage (rather than PostMessage). crs 2004-03-13 17:14:32 +0000
  • a6e858a208 Added win32 support for power management. crs 2004-03-13 17:13:55 +0000
  • 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. crs 2004-03-10 22:03:01 +0000
  • 6c7039490d Added check for inet_aton and a simple implementation for platforms that are missing it. crs 2004-03-10 20:35:03 +0000
  • 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. crs 2004-03-08 21:18:36 +0000
  • 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. crs 2004-03-08 20:53:32 +0000
  • f068232643 Typecasting fix to compile on old solaris. crs 2004-03-08 20:45:53 +0000
  • a27c6ad2c6 Server now disables jump zones when scroll lock is active. crs 2004-03-06 16:20:08 +0000
  • 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. crs 2004-02-29 21:34:30 +0000
  • ffa966747b Fixed handling of winsock connect event. Was always immediately indicating socket had connected. crs 2004-02-29 21:33:20 +0000
  • 4ac756fc28 Fixed cursor hiding on win32. Still fails occassionally. crs 2004-02-29 21:32:00 +0000
  • 77dd4c81c4 Added reload configuration menu item to win32 task bar. crs 2004-02-29 21:31:24 +0000
  • 8f083a2e65 Fixed comment. crs 2004-02-29 17:36:32 +0000
  • b8606412d6 Switched to doxygen comments. crs 2004-02-29 17:29:01 +0000
  • 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. crs 2004-02-29 17:28:51 +0000
  • 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. crs 2004-02-29 16:48:22 +0000
  • d6ec331b09 Made all arch sockets non-blocking. crs 2004-02-29 16:11:17 +0000
  • 75cafe65a6 Enabled running at high priority on windows. crs 2004-02-28 17:51:55 +0000
  • 82dffeb498 Generalized 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
  • 9f7e909361 Fixed incorrect accumulation of newlines in log. crs 2004-02-28 16:06:00 +0000
  • 3dea8f8c5d Now using first set options message as end of handshake. crs 2004-02-28 16:00:54 +0000
  • 1a9ddb9110 Added missing files. crs 2004-02-28 12:30:52 +0000
  • 63db68aee5 Added missing file. crs 2004-02-28 12:24:47 +0000
  • 54acf38d82 Merged Win32 updates. Added full warnings on g++. Fixed bug in client when handling server rejection. crs 2004-02-28 12:19:49 +0000
  • 612a2054e6 Updated Makefiles and win32 projects and removed dead classes. crs 2004-02-15 18:12:35 +0000
  • 48908242d2 Checkpoint. Conversion to event driven system complete for Unix. Still need to convert win32 platform specific files. crs 2004-02-15 17:32:11 +0000
  • 901a76df0d Minor cleanup. crs 2004-02-14 16:30:27 +0000
  • 1861f21fb5 Checkpoint. synergys now works. Still need to do lib/client and synergyc. crs 2004-02-14 14:04:36 +0000
  • c44c18bfdc Refactored 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
  • 3bcdf139a7 No longer sending incorrect disconnect events in read() and removed redundant sending of disconnect event in close(). crs 2004-02-08 16:51:45 +0000
  • 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. crs 2004-02-01 21:09:22 +0000
  • 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. crs 2004-02-01 20:56:52 +0000
  • 4c7e524896 Checkpointing 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
  • fa215f1b13 Merged changes from 1.0 branch, including Japanese keyboard support (thanks to Kazuhide Takahashi). crs 2003-09-28 11:58:38 +0000
  • 175843b4fb Changed 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
  • f4d7ea3d7b Fixed 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
  • 6d3c536717 Fixed 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
  • 80f3998398 Changed 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
  • 33e359a384 Fixed failure to unlock mutex in CXWindowsScreen::mainLoop() when returning due to a quit event. crs 2003-09-03 21:49:57 +0000
  • 8395f69899 Now leaving client screen or entering server screen if necessary when disabling the screen. crs 2003-09-03 21:26:52 +0000
  • a237cbacdb Fixed 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
  • 9311250c22 Fixed uses of X11 display without mutex held. crs 2003-09-03 21:21:22 +0000
  • 809a347333 Removed heap allocation when polling sockets. crs 2003-09-02 22:06:07 +0000
  • 47ca409ff9 Merged primary and secondary screens into one class. crs 2003-09-02 22:05:47 +0000
  • 4fea7719f3 Merged changes from 1.0 branch. crs 2003-09-02 21:41:00 +0000