Commit Graph

  • db8165db09 now using ":0.0" as the display if DISPLAY isn't set. crs 2002-06-09 18:03:32 +0000
  • e94be94a50 checkpoint. crs 2002-06-09 18:00:03 +0000
  • 7ca4804667 added command line option to choose the screen name. also now using the hostname as the default name. this is on both client and server. crs 2002-06-09 17:59:32 +0000
  • c357180530 added FIXME comment. crs 2002-06-09 17:35:28 +0000
  • 255e46017e fixed problem with setConfig(). if the new config didn't include a screen that was already connected under an alias then that screen wouldn't be disconnected and removed from the screen list until the screen voluntarily disconnected. at that time removeConnection() would assert because the screen name would not be found. now using the canonical name in the protocol object as well as CServer. this allows setConfig() to always detect removed screens and disconnect them. crs 2002-06-09 17:21:33 +0000
  • a9910041b3 now exits instead of restarting if child dies due to an unexpected signal. crs 2002-06-09 16:53:57 +0000
  • 555aa19eb2 added command line and configuration file arguments to choose the address and port to listen on or connect to. changed the default port and put it in ProtocolTypes.h. the HTTP port is now no longer opened unless the --http argument is supplied or the config file includes it. crs 2002-06-09 16:53:25 +0000
  • 8b2a282eb5 added aliases to configuration. an alias is another name for a screen. it's expected that the server will want to accept a given client under several names (e.g. the hostname and the FQDN). crs 2002-06-08 23:24:40 +0000
  • 562e3aebb5 checkpoint. crs 2002-06-08 21:48:16 +0000
  • 4b28ffc5b2 win32 changes. changed names of binaries. added support for running as (and installing/installing) a service. added support for multiple desktops (NT only, 95 doesn't support multiple desktops). crs 2002-06-08 21:48:00 +0000
  • 5709d8ddef refactored some common platform dependent stuff into a new library: platform. also removed test.cpp. crs 2002-06-04 12:26:23 +0000
  • c3649df304 added command line parsing, restartability, and daemonizing to client. broke win32 stuff though. also moved version and copyright constants into a new file and renamed protocol version constants. crs 2002-06-04 11:06:26 +0000
  • e409c83ef9 fixed delete bug in printt -- when skipping file and line the deleted pointer was wrong. crs 2002-06-04 11:03:34 +0000
  • 3b872bb727 fixed timeout when getting selection -- forgot to set flag to terminate event loop. crs 2002-06-04 11:02:33 +0000
  • beda89fd53 changes to add command line arguments. also added automatic restarting and daemonizing on unix. daemon sends log messages to syslog. unix now reads config file from file named on command line; if no command line arg then uses effective user's config file and if that's not there it finally tries /etc/synergy.conf. if there are no screens configured then one is added for the primary screen. broke some startup stuff on win32. crs 2002-06-03 18:53:18 +0000
  • 10f4e94557 added a method to set the filter given a priority string (instead of a number). fixed a comment related to what those priority strings are. added a CLOG_PRINT priority which is never filtered and suppresses the trace info and the priority level message. it's intended as a way to output a message through the logger without getting extra output. crs 2002-06-03 16:36:45 +0000
  • 014b781fb0 moved case insensitive comparison utility functions into CString from CHTTPProtocol. crs 2002-06-03 16:34:22 +0000
  • 1cbdaee31b added better handling of X server disconnecting unexpectedly. the apps still exit but they do it in a mostly controlled manner. in particular, the server threads except the one processing primary screen events will terminate gracefully. this will be important should the server ever allow HTTP clients to rewrite the configuration file. crs 2002-06-03 13:45:30 +0000
  • ddbb465540 shortened poll() timeout. crs 2002-06-02 23:07:57 +0000
  • ad15393732 changed buffered output stream to wait() when flush()ing instead of polling/sleeping. changed CTCPSocket to not use thread cancellation but to instead use m_connected to exit the thread. also shortened poll timeout. crs 2002-06-02 22:57:50 +0000
  • 1e988b3839 make sleep shorter in poll/sleep getEvent() loops. crs 2002-06-02 21:35:20 +0000
  • a541ebc557 removed poll/sleep code to improve performance. crs 2002-06-02 21:03:38 +0000
  • 869617a34a now ignores key if there's no key mapped for a required modifier. was asserting (on the wrong expression). crs 2002-06-02 19:04:24 +0000
  • 1d3807cb0e added SIGINT and SIGTERM handling to unix client and server. either signal causes the main thread to be cancelled. added necessary code to make main thread cancellation clean up nicely. crs 2002-06-02 18:49:35 +0000
  • 1da9be88c9 added a maximum request size to CHTTPProtocol so we can bail on clients that cause us to use too much memory. also put methods in CHTTPRequest to get/set headers and changed the data structure used to store them. fixed a couple of other miscellaneous bugs in CHTTPProtocol.cpp. crs 2002-06-02 13:34:35 +0000
  • fa4d24216f now limiting number of simultaneous HTTP requests being handled at once. this is to prevent denial of service. crs 2002-06-02 11:49:46 +0000
  • d2135af0d9 fixes, mainly for windows. first, had to add a notification from CServer to the primary screen when the configuration changes so it can make necessary adjustments (the win32 primary screen must tell the hook dll about the new jump zones). crs 2002-06-01 19:26:11 +0000
  • 1ac62a9533 added mutex to all public methods that didn't already have it. fixed two blown assertions. first, if user tried to switch to a client that had connected but hadn't yet sent the first info message it would assert on the zero size screen. second, if the primary screen was handling a mouse motion on behalf of a secondary screen when that secondary screen disconnected then an assert would blow because the primary screen would call onMouseMoveSecondary() but m_protocol on the active screen is NULL because disconnecting the active secondary screen caused the mouse to jump to the primary screen. crs 2002-06-01 10:52:02 +0000
  • 3a80df28dd changed iterator to use iterator_traits directly instead of std::iterator to support the old STL on grace. crs 2002-05-31 18:35:53 +0000
  • 793c968f00 server now rejects clients that are not in the configuration. added a protocol message to indicate this. crs 2002-05-31 18:18:29 +0000
  • 1e8a5d7fa9 fixed setConfig() to disconnect secondary screens that aren't in the new configuration. crs 2002-05-31 18:09:43 +0000
  • 71c374b6cd made isScreen() a const method. crs 2002-05-31 18:08:08 +0000
  • 942e57fc8d added I/O for configuration files and changed the server to use an external file for its configuration (was hard coding a config for testing). crs 2002-05-31 17:32:26 +0000
  • 0eccd52226 finished renaming CScreenMap to CConfig. crs 2002-05-31 14:44:54 +0000
  • 67b149d3a4 checkpoint. changed CScreenMap to CConfig. must still change CScreenMap.cpp to CConfig.cpp. crs 2002-05-31 14:43:23 +0000
  • ed96354bad checkpoint. renamed CScreenMap.h to CConfig.h. will be changing CScreenMap to CConfig everywhere. crs 2002-05-31 14:34:16 +0000
  • 536eb52337 added methods to CLog for getting the outputter, getting and setting the priority filter, and added code for thread safety. added code to apps to enable thread safety in CLog. crs 2002-05-31 14:25:26 +0000
  • 70f5f9491d added basic support for an embedded HTTP server. server currently supports editing the screen map but changing the map won't behave correctly if there are connected screens. crs 2002-05-30 16:13:16 +0000
  • 2cc63e31aa fixed bug in closing down a socket. crs 2002-05-30 16:11:59 +0000
  • 8cb0302665 updated win32 clipboard to match new model. crs 2002-05-27 18:55:51 +0000
  • f5a6d2738a checkpoint crs 2002-05-27 18:35:14 +0000
  • 189537b8b9 removed getEventMask() from primary screen. added a class to CXWindowsUtil that installs/uninstalls an X error hander. using that in primary screen, clipboard, and util to ensure that certain errors don't kill the app. crs 2002-05-27 18:30:13 +0000
  • 7cf20d9ad0 removed getEventMask() and fixed some comments. also now using toggle key states in updateModifiers(). crs 2002-05-27 18:28:06 +0000
  • f8eb775278 changed lesstif hack to only apply to the CLIPBOARD selection. apprently the PRIMARY selection must follow the ICCCM protocol correctly. crs 2002-05-27 17:05:34 +0000
  • 56d7271bc1 added missing files from previous submit. crs 2002-05-27 16:51:07 +0000
  • 854d2c7fbf checkpoint. changed clipboard model. the clipboard can only be accessed now between open()/close(). ownership of the clipboard is asserted via the empty() method. this parallels the win32 model (but the win32 code hasn't been updated yet). crs 2002-05-27 16:22:59 +0000
  • 097882b71c checkpoint crs 2002-05-24 17:54:34 +0000
  • 5fc87baa0f added screen locking support to win32. added support for resolution changing (only semi-supported on X because that has no means for resizing screen anyway). also fixed some clipboard problems on win32. crs 2002-05-24 17:54:28 +0000
  • 34c587e864 added support for locking to a screen when the sroll lock is toggled on or when any key or button is pressed. fully implemented on X but stubbed out for now on win32. crs 2002-05-24 14:37:12 +0000
  • a0b25b9d4a checkpoint crs 2002-05-23 18:35:15 +0000
  • e277e6e74a added support for mouse wheel on win32. crs 2002-05-23 18:35:08 +0000
  • 24f5b66cf3 added support for mouse wheel on X. crs 2002-05-23 15:50:38 +0000
  • 4542bb9e40 added a third screen to hard coded map for testing purposes. crs 2002-05-23 15:00:39 +0000
  • 9ce7a2757a fixed log message. crs 2002-05-23 15:00:13 +0000
  • 13eee14232 server no longer asserts when a client connects with a name that's already in use by another client. also added reporting of errors from the server to clients so clients can report meaningful messages to users. crs 2002-05-23 14:56:03 +0000
  • 995771eec1 checkpoint crs 2002-05-23 14:04:43 +0000
  • 6611ea871e changed structs to classes. there should be no more structs now. crs 2002-05-23 14:04:35 +0000
  • 6697bd900e checkpoint. crs 2002-05-22 17:09:08 +0000
  • 8df02380e5 removed unnecessary call in screen class, added logging calls in clipboard class, and added another cast in protocol util to avoid warning on win32. crs 2002-05-22 17:08:37 +0000
  • 9e161163b0 now letting some key events filter through. this allows the keyboard lights to track toggle changes. however, it also seems to let through keyboard events that shouldn't get through. crs 2002-05-22 17:05:26 +0000
  • 685bcfa05f fixed incorrect for-loop over directions conditional. crs 2002-05-22 17:02:58 +0000
  • a5ae8011e2 win32 changes. replaced log dialog hack with a windows console window. now attaching thread input queues as necessary. shifted code around so toggling toggle keys is immediately reflected by secondary screen's keyboard. now setting extended key flag for keys that need it. fixed handling of shift + caps-lock. added handling of keys that should distinguish between left and right but don't. fixed get/set of active window on leave/enter of primary screen. replaced 1x1 primary window with a full screen window to work around a problem with losing key events. changed calculation of mouse move deltas. crs 2002-05-22 17:01:17 +0000
  • d893cc16a8 fixed type of socket handle (from int to CNetwork::Socket). crs 2002-05-22 16:56:06 +0000
  • 5c760183ce removed blank line. crs 2002-05-22 16:55:19 +0000
  • 024f76c909 changed un-inlined code to avoid bogus VC++ level 4 warnings. added support for more win32 thread priorities. crs 2002-05-22 16:55:05 +0000
  • cda243ac76 fixed parameter type for socket port. crs 2002-05-22 16:51:59 +0000
  • aa125b07c5 changed set of disabled win32 warnings. crs 2002-05-22 16:43:14 +0000
  • 0cbd6b07a2 fixed NULL dereference. crs 2002-05-22 16:42:48 +0000
  • 4968a5bb7c removed setting send buffer to zero size. it just reduced performance. crs 2002-05-05 23:37:12 +0000
  • f8f1fb4041 replaced True/False with true/false when assigning to m_repeat. also should now work if the first element of a modifier keymapping is 0. that won't normally be the case but xmodmap was doing weird things on grace. if the first element is 0 it'll try the second element. if that's also zero then that modifier will be ignored. crs 2002-05-05 19:52:03 +0000
  • 7ebaab42e0 fixes for win32 keyboard. crs 2002-05-05 19:38:09 +0000
  • 2d7e3e8a61 fixed caps-lock handling. crs 2002-05-04 19:43:20 +0000
  • 2dad59a027 checkpoint. added half duplex for num lock. crs 2002-05-04 18:33:48 +0000
  • cd3e49a9a9 checkpoint. fixing up handling of half-duplex num-lock. crs 2002-05-04 18:31:54 +0000
  • 8de2696369 checkpoint. changed when toggle keys toggle (now always on release). must see if this works. crs 2002-05-04 18:09:02 +0000
  • 4d11079095 Fixes for win32 key handling. crs 2002-05-04 18:08:22 +0000
  • f3c70dc300 fixed handling of shift + caps-lock. those two modifiers should cancel out if the keysym is subject to case conversion, but not otherwise. also added logging of key lookup code. crs 2002-05-04 11:23:11 +0000
  • b19fdd86cf fixed handling of shift+tab on a system that can map ISO_Left_Tab. now tries to map ISO_Left_Tab without shift first then falls back to Tab (note that if ISO_Left_Tab can be mapped but requires a modifier then the modifier will be added). also changed attempt to map ISO_Left_Tab as a backup to Tab to request the shift modifier whether or not the primary screen requested it. crs 2002-05-03 12:23:48 +0000
  • afa14b67c2 fixed handling of ISO_Left_Tab when that is not mapped to a keycode by mapping it to tab with shift pressed. crs 2002-05-03 12:14:55 +0000
  • ab62dec0f7 removed attempt to make release/press of a repeating key use the same server time. was getting what appears to be deadlock but not sure why. crs 2002-05-03 11:49:30 +0000
  • 5641a875c1 checkpoint. made changes to support key autorepeats on X. crs 2002-05-03 11:26:44 +0000
  • 570d85c842 Indentation change. crs 2002-05-02 11:44:21 +0000
  • 5132161e30 Fixed bug in stream buffer that could cause data to be inserted out of order. Also removed unnecessary limit on writes to the TCP socket. crs 2002-05-02 11:43:52 +0000
  • 76269a48c1 checkpoint debugging of stream buffer. crs 2002-05-02 11:33:34 +0000
  • eb2a202834 Was trying to avoid sending clipboard if timestamp wasn't changed but clipboard owners may not update that timestamp when the selection is changed. Disabled the timestamp check. crs 2002-05-01 16:30:20 +0000
  • f052d126c0 Added more checks to avoid sending unchanged clipboard data. Still takes too long to query the clipboard owner for info (maybe 1/10th second) but not sure why or if that can be improved. crs 2002-05-01 16:17:57 +0000
  • f2e83e607d checkpoint. turned off nagle and send buffering. also added test to skip clipboard conversion if a previous conversion from that owner failed. crs 2002-05-01 15:31:47 +0000
  • 59c5e4bf13 Fixed uninitialized variable when computing toggle mask. Also reduced priority of some mouse motion log messages. crs 2002-05-01 14:36:52 +0000
  • c8737de4ad removed obsolete files. crs 2002-05-01 14:35:55 +0000
  • f536e1cece added fallback for missing numpad movement keys (if there's no mapping for those keys then the non-keypad versions are tried). crs 2002-04-30 18:30:05 +0000
  • b279c80608 checkpoint. now sending toggle modifier state when entering a screen. this allows the secondary screen to set it's modifier state to match the primary screen's state. this is not strictly necessary since each keystroke should adjust the modifier state as needed to get the right result. crs 2002-04-30 17:48:11 +0000
  • 56877bcc7d Added logging and handling of "half-duplex" caps-lock key. crs 2002-04-30 16:25:29 +0000
  • c2a69d6c64 Changed name for auto-generated dependency files from Makedepend to .depend. crs 2002-04-30 16:23:30 +0000
  • dc19570621 Fixes to get win32 client and server up to date. crs 2002-04-30 16:23:03 +0000
  • ea6b347b18 Indentation changes. crs 2002-04-29 14:40:01 +0000
  • 3ca72b35f3 Added some validation of protocol message parameters. crs 2002-04-29 14:25:24 +0000
  • 32b085e42e Shortened timeout on waiting for clipboard response. crs 2002-04-29 14:12:48 +0000
  • 6a9a180688 Made event selection a little more robust. Also fixed failure to marshall clipboard data when updating primary clipboards. crs 2002-04-29 14:08:48 +0000
  • 6299eea7b6 Added missing event mask. crs 2002-04-29 13:49:56 +0000
  • c5f6b34d85 checkpoint. changed protocol to better handle clipboards. now sending a sequence number with enter messages. screens use that sequence number in clipboard grab and data messages. the server uses the sequence number to order messages across clients. also changed secondary screens to send clipboard updates on leaving (or when grab occurs when not active) instead of on a query from the server. primary effectively does the same. the query message has been removed. crs 2002-04-29 13:31:44 +0000