4f418e015ework around for bug with mouse driver on lombard powerbook.
crs
2002-06-20 09:19:55 +00:00
a16e7217cefixed bugs in mouse motion. wasn't taking care to capture all motion events relative to the previous mouse position. for example, if two mouse events arrive, the first at x+1,y and the second at x+2,y, we used to compute deltas of 1,0 and 2,0 instead of 1,0 and 1,0. that's fixed. also worked around a bug (probably) in windows that caused a motion event after a SetCursorPos() to be lost or reported one pixel off from the correct position. now using mouse_event() which doesn't have that problem. also fixed calculation of normalized coordinates for mouse_event() when there are multiple displays.
crs
2002-06-19 20:24:35 +00:00
bebb63ac53checkpoint. initial support for multiple displays on win32.
crs
2002-06-19 17:03:29 +00:00
29c90a3b6cfixed addition of X11 -L and -l options on link lines.
crs
2002-06-19 14:45:22 +00:00
c4f1dbdae4checkpoint. automake changes for wait().
crs
2002-06-19 12:21:26 +00:00
8a103ce63ccheckpoint. automake changes for reentrant functions.
crs
2002-06-19 11:58:48 +00:00
9c7e863d77checkpoint. more conversion to automake.
crs
2002-06-19 11:23:49 +00:00
57fb87ad10refactored ISocket into IDataSocket. the latter and IListenSocket now derive from ISocket.
crs
2002-06-17 12:02:26 +00:00
e3dcf7febfperformance fixes on win32 plus clean up of some warnings. also improved error messages when uninstalling service.
crs
2002-06-14 18:08:20 +00:00
21af7b2f17added a blurb about synrgyhk.dll and that the service manager will look for the binary wherever it was when --install was used.
crs
2002-06-11 20:10:49 +00:00
2b07c8091cwindows fixes needed for formatting changes.
crs
2002-06-11 20:09:59 +00:00
c54d92b78fcommented out half-duplex flags that should never have been uncommented.
crs
2002-06-11 18:33:03 +00:00
88490de5a2fixed bug with switching screens on primary when there's no link in that direction (it would assert). introduced bug when adding support for wrapping. now ignores attempts to move in a direction with no link.
crs
2002-06-11 18:31:06 +00:00
62519b19feindentation and other formatting changes. also cleaned up #includes.
crs
2002-06-10 22:06:45 +00:00
68940e58f3win32 changes. now including windows.h with WIN32_LEAN_AND_MEAN to avoid including some stuff we don't want (like winsock).
crs
2002-06-10 16:49:46 +00:00
afc8d6a9e7added example files and a README.
crs
2002-06-10 11:00:55 +00:00
172fc7e5b3now allowing a screen to be its own neighbor to allow wrapping. also no longer warping mouse to 0,0 when setting server screen info. that was causing the mouse to jump if the server screen had itself as its left or top neighbor (directly or indirectly) once a screen could be its own neighbor.
crs
2002-06-10 10:08:36 +00:00
2ea3d66112fixed stripping of comments from configuration streams.
crs
2002-06-10 09:49:21 +00:00
2e931a4fd9changed "permitted" to "supported" in error messages.
crs
2002-06-10 09:49:03 +00:00
0a2f8547fcno longer camps if the server sends an error message.
crs
2002-06-09 23:08:18 +00:00
28afcddf62added support for camping, i.e. repeatly trying to connect to the server until we succeed.
crs
2002-06-09 22:20:28 +00:00
30a6a8b837CTimerThread now allows zero and negative timeouts. a negative timeout never times out and CTimerThread is a no-op.
crs
2002-06-09 22:20:01 +00:00
db8165db09now using ":0.0" as the display if DISPLAY isn't set.
crs
2002-06-09 18:03:32 +00:00
7ca4804667added 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 +00:00
255e46017efixed 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 +00:00
a9910041b3now exits instead of restarting if child dies due to an unexpected signal.
crs
2002-06-09 16:53:57 +00:00
555aa19eb2added 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 +00:00
8b2a282eb5added 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 +00:00
4b28ffc5b2win32 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 +00:00
5709d8ddefrefactored some common platform dependent stuff into a new library: platform. also removed test.cpp.
crs
2002-06-04 12:26:23 +00:00
c3649df304added 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 +00:00
e409c83ef9fixed delete bug in printt -- when skipping file and line the deleted pointer was wrong.
crs
2002-06-04 11:03:34 +00:00
3b872bb727fixed timeout when getting selection -- forgot to set flag to terminate event loop.
crs
2002-06-04 11:02:33 +00:00
beda89fd53changes 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 +00:00
10f4e94557added 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 +00:00
014b781fb0moved case insensitive comparison utility functions into CString from CHTTPProtocol.
crs
2002-06-03 16:34:22 +00:00
1cbdaee31badded 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 +00:00
ad15393732changed 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 +00:00
a541ebc557removed poll/sleep code to improve performance.
crs
2002-06-02 21:03:38 +00:00
869617a34anow 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 +00:00
1d3807cb0eadded 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 +00:00
1da9be88c9added 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 +00:00
fa4d24216fnow limiting number of simultaneous HTTP requests being handled at once. this is to prevent denial of service.
crs
2002-06-02 11:49:46 +00:00
d2135af0d9fixes, 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 +00:00
1ac62a9533added 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 +00:00
3a80df28ddchanged iterator to use iterator_traits directly instead of std::iterator to support the old STL on grace.
crs
2002-05-31 18:35:53 +00:00
793c968f00server now rejects clients that are not in the configuration. added a protocol message to indicate this.
crs
2002-05-31 18:18:29 +00:00
1e8a5d7fa9fixed setConfig() to disconnect secondary screens that aren't in the new configuration.
crs
2002-05-31 18:09:43 +00:00
71c374b6cdmade isScreen() a const method.
crs
2002-05-31 18:08:08 +00:00
942e57fc8dadded 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 +00:00
0eccd52226finished renaming CScreenMap to CConfig.
crs
2002-05-31 14:44:54 +00:00
67b149d3a4checkpoint. changed CScreenMap to CConfig. must still change CScreenMap.cpp to CConfig.cpp.
crs
2002-05-31 14:43:23 +00:00
ed96354badcheckpoint. renamed CScreenMap.h to CConfig.h. will be changing CScreenMap to CConfig everywhere.
crs
2002-05-31 14:34:16 +00:00
536eb52337added 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 +00:00
70f5f9491dadded 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 +00:00
2cc63e31aafixed bug in closing down a socket.
crs
2002-05-30 16:11:59 +00:00
8cb0302665updated win32 clipboard to match new model.
crs
2002-05-27 18:55:51 +00:00
189537b8b9removed 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 +00:00
7cf20d9ad0removed getEventMask() and fixed some comments. also now using toggle key states in updateModifiers().
crs
2002-05-27 18:28:06 +00:00
f8eb775278changed 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 +00:00
56d7271bc1added missing files from previous submit.
crs
2002-05-27 16:51:07 +00:00
854d2c7fbfcheckpoint. 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 +00:00
5fc87baa0fadded 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 +00:00
34c587e864added 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 +00:00
13eee14232server 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 +00:00
8df02380e5removed 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 +00:00
9e161163b0now 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 +00:00
685bcfa05ffixed incorrect for-loop over directions conditional.
crs
2002-05-22 17:02:58 +00:00
a5ae8011e2win32 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 +00:00
d893cc16a8fixed type of socket handle (from int to CNetwork::Socket).
crs
2002-05-22 16:56:06 +00:00