Commit Graph

  • 50eee03f6d moved try/catch block from CMSWindowsScreen to CPrimaryClient. this means CMSWindowsScreen doesn't need to include XSynergy.h. crs 2002-07-29 16:06:52 +00:00
  • 5c4e4fdf08 changed doxygen configuration. crs 2002-07-29 16:05:59 +00:00
  • 4651a3f821 Added doxygen comments for all relevant headers in net. crs 2002-07-28 19:06:52 +00:00
  • 46140549fc Added doxygen comments for all relevant headers in http. crs 2002-07-28 17:55:59 +00:00
  • b8ce70d0f0 Added doxygen comments for all relevant headers in io. crs 2002-07-28 17:25:13 +00:00
  • 24d54fca53 Added doxygen comments for all relevant headers in mt. crs 2002-07-28 13:34:19 +00:00
  • 7a461855eb added doxygen comments for all relevant headers in base. crs 2002-07-26 18:28:18 +00:00
  • 879cf26f8d fixed type mismatch (SInt32 vs int) in definition of getWindowProperty(). crs 2002-07-26 18:27:31 +00:00
  • 0bf455e79a added configuration file for building doxygen documentation. the code is not yet doxygen documented, though. crs 2002-07-26 16:05:59 +00:00
  • 3f046bb48a now deleting property when so requested even if read failed. crs 2002-07-26 15:22:25 +00:00
  • 4bf6cf2adf checkpoint. crs 2002-07-25 18:08:00 +00:00
  • 4688c99ee4 improved error messages for bad addresses. crs 2002-07-25 17:58:01 +00:00
  • f129841b38 made all getWhat() methods on exceptions consistent. they now all use format() the same way. also changed format() to actually do formatting. however, it doesn't try looking up formatting strings by id, it just uses the fallback format string. crs 2002-07-25 17:52:40 +00:00
  • 1fd8e25f7d moved string formatting into CStringUtil from CLog and added methods for format positional string arguments. crs 2002-07-25 17:23:35 +00:00
  • 8334d987f5 added unix specific implementation of CXWindowsScreen::mainLoop() that uses poll() to process events more efficiently. it won't wake up nor sleep any more than necessary, unlike the platform independent implementation that polls and sleeps. crs 2002-07-25 09:55:01 +00:00
  • 3bfd2e252e finished INCR transfer changes. also made motifGetTime() return icccmGetTime() because it seems motif does TIMESTAMP like ICCCM. crs 2002-07-25 09:23:24 +00:00
  • d3ea39149a checkpoint. working on INCR transfers. crs 2002-07-25 08:57:46 +00:00
  • 63b1d4397a fixes for win32 due to changes in how s_restartable is handled. the main change is that WM_QUIT now causes the thread to be cancelled instead of mainLoop() just returning. this also requires runDaemon() to call the run function in a new thread each time it calls it because it could can cancelled. crs 2002-07-24 19:26:18 +00:00
  • 2e6e8e179a fixes for win32 clipboard due to CUnicode nul terminator changes. crs 2002-07-24 19:24:21 +00:00
  • a150f64e9c fixed an off-by-one error in UTF8ToText(). crs 2002-07-24 19:23:46 +00:00
  • 4c38178fb9 fixed an off-by-one error in textToUTF8(). crs 2002-07-24 17:39:52 +00:00
  • 67051556bb fixed type of TARGETS target. crs 2002-07-24 17:30:32 +00:00
  • 5fe7763d37 made handling of nul terminators in CUnicode more sane. crs 2002-07-24 17:22:01 +00:00
  • 6fc6805a06 some fixes for motif clipboard. still not handling incremental transfer through root window property because not sure of the protocol. crs 2002-07-24 17:07:52 +00:00
  • c6ecc79c0d removed restart function from platform. no longer trying to restart if the X server connection was lost; since synergy is likely to be started by xdm or the user's xsession, it's better for synergy to simply terminate when the connection is lost. synergy will still restart due to other errors. also fixed numerous other minor bugs and cleaned some stuff up (like app error codes are now consistent and enumerated in Version.h, for lack of a better place). and boosted version and protocol numbers. crs 2002-07-24 13:01:18 +00:00
  • d9ec880291 checkpoint. crs 2002-07-23 19:00:01 +00:00
  • 7d7b7f85ca fixed a bug in clipboard conversion (was using wrong converter or no converter when one was available). crs 2002-07-23 18:59:44 +00:00
  • 7129efc9ab converted win32 to use unicode based KeyID. crs 2002-07-23 18:59:15 +00:00
  • 8271c8accc checkpoint. converting KeyID to use UTF-32 encoding instead of X11 keysyms. crs 2002-07-23 17:04:41 +00:00
  • 57b64f1fe7 no longer attempting to unmarshall clipboard formats that aren't known to the caller. if the client supports more formats than the server then the server could get a clipboard format greater than kNumFormats. with this change the server discards the extra formats instead of crashing. crs 2002-07-23 15:34:05 +00:00
  • 8ada1e8a72 unicode clipboard changes for win32 plus some bug fixes. crs 2002-07-23 15:26:40 +00:00
  • b1163aa593 removed unnecessary atoms from X clipboard object. crs 2002-07-23 12:35:36 +00:00
  • 1fd07567cc checkpoint. more CUnicode fixes. crs 2002-07-23 12:08:30 +00:00
  • 2fa9b263f9 checkpoint. fixed the other cases in the same function as the previous checkin. also prevented the errors flag from getting reset after the multibyte to wide character conversion. crs 2002-07-23 11:51:13 +00:00
  • e93a12868d checkpoint. fixed cases for mbrtowc (was using 1 and 2 instead of -1 and -2). crs 2002-07-23 11:42:54 +00:00
  • 1f5cb6a96f checkpoint. more UTF8 clipboard stuff. crs 2002-07-23 11:36:18 +00:00
  • 16cc05d56b checkpoint. more UTF8 clipboard testing. crs 2002-07-23 09:33:50 +00:00
  • fcd99c9510 checkpoint. more UTF8 clipboard stuff. crs 2002-07-22 18:46:57 +00:00
  • c4f21ce29b checkpoint. more UTF8 clipboard stuff. crs 2002-07-22 18:17:21 +00:00
  • bb966cdd65 checkpoint. working on UTF8 clipboard transfer. crs 2002-07-22 18:03:44 +00:00
  • 643d0f1089 checkpoint. adding support for unicode in clipboard. crs 2002-07-22 17:32:51 +00:00
  • 4c2cbb9f03 changed notes about how to startup configure synergy. it now discourages using boot scripts, which can't handle X servers requiring authorization, and suggests modifying xdm's Xsetup. crs 2002-07-19 21:27:59 +00:00
  • 587f5247d8 updated init.d scripts to work with SuSE. however, it looks as if they cannot be used on an X server using authentication because the daemons they start are not authorized to connect to the X server. X users should modify Xsetup or Xsession. crs 2002-07-19 20:44:57 +00:00
  • 47f7e3c4d5 formatting. crs 2002-07-19 18:12:41 +00:00
  • 5f865a9b07 removed <CR> from previous change. crs 2002-07-19 17:39:45 +00:00
  • 89ab1caa11 reordered operations to reduce cursor flashing when entering primary screen. crs 2002-07-19 17:38:34 +00:00
  • cf71aec730 fixed handling of calling init() when a previous process did not call cleanup(). if that process still appears to exist then the init() fails. otherwise some cleanup is performed and the init() proceeds. a synergy server started while another is running will now exit immediately without interfering the original server. crs 2002-07-18 17:03:10 +00:00
  • 635c3d1c62 now cancelling and waiting for the accept client thread before cancelling any other threads. this prevents a race condition where we disconnect a client but it reconnects before we manage to shutdown. that might leave a thread running and the connection won't be closed down properly. crs 2002-07-18 17:00:48 +00:00
  • 0759cbc104 changed waitForEvent() to handle a peculiar feature of MsgWaitForMultipleObjects(): it will not return immediately if an event already in the queue when it's called was already in the queue during the last call to GetMessage()/PeekMessage(). also now discarding screen saver events if there are any other screen saver events in the queue already. this prevents these events from piling up in the queue, which they'd do because we sleep for 250ms when handling each one. crs 2002-07-18 16:58:08 +00:00
  • e94f308e21 fixed incorrect paths to makehook and synrgyhk project files. crs 2002-07-18 08:54:17 +00:00
  • 76cc62d133 attempt to fix stuttering when leaving win32 screen. seems to work but will let testers make the final call. also fixed desktop synchronization by setting a variable that was mistakenly left unset. and tried to work around an apparent bug in MsgWaitForMultipleObjects() that prevented the service from closing down properly. start/pause/continue/stop sequence still doesn't shut down correctly. start/pause/stop and start/stop work fine. crs 2002-07-17 17:27:41 +00:00
  • 82cdfb478a removed unnecessary local variable. crs 2002-07-17 17:24:44 +00:00
  • 22ba640940 fixes to get it compiling on .NET. crs 2002-07-16 19:07:15 +00:00
  • 7c391a0f35 moved onError() method to IScreenReceiver from IPrimaryScreenReceiver. also implemented onError in CClient which previously did not have any way to handle display disconnection. crs 2002-07-16 16:52:26 +00:00
  • 0bfe12d6ab completing previous checkin. crs 2002-07-15 15:03:04 +00:00
  • 4b46862026 checkpoint. refactored win32 code. had to edit and rename some files so this is only a checkpoint. crs 2002-07-15 15:01:36 +00:00
  • f48a5fe387 checkpoint. still refactoring. merged common code from primary screens into CPrimaryScreen and merged common code from secondary screens into CSecondaryScreen. changed is-a relationship to a has-a between the primary and secondary screen classes and the generic platform dependent screen class to avoid multiple inheritance of implementation. also standardized the interface for those generic screen classes. adding a platform now involves implementing simpler interfaces: IScreen for the generic screen, IScreenEventHandler and some methods of CPrimaryScreen for the primary screen, and IScreenEventHandler and some methods of CSecondaryScreen for the secondary screen. did X11 platform but not win32 platform. crs 2002-07-13 22:00:38 +00:00
  • 52b60d5175 refactoring. refactored stuff in client (with changes to server as necessary). crs 2002-07-12 20:41:23 +00:00
  • ef7fe1f283 checkpoint. making win32 and X primary screen code more similar in order to share code later. crs 2002-07-11 18:58:49 +00:00
  • feeb15a08d applied refactoring to win32 code. crs 2002-07-11 13:13:37 +00:00
  • 3468f3d503 more refactoring. crs 2002-07-10 21:22:28 +00:00
  • 710e1bdd47 refactored client code. it now uses IClient and IServer and has a CServerProxy, making it's design similar to the server code. crs 2002-07-10 20:18:32 +00:00
  • df6748f669 removed some obsolete comments. crs 2002-07-10 14:29:50 +00:00
  • f90076938b removed IPrimaryReceiver in favor of IServer, which required a few minor changes to support IPrimaryReciever's functionality. this does mean that the IPrimaryScreen class will be calling some methods with dummy arguments. those are documented in CPrimaryClient. crs 2002-07-10 14:15:17 +00:00
  • 64232c7854 updated to new automake and refactored server stuff. the server now speaks to the primary screen and secondary screens almost everywhere the same way through an IClient interface; only special primary screen calls are accessed through a different interface, the CPrimaryClient interface. this simplifies the server since it no longer needs to test whether the active screen is the primary or a secondary in most cases. crs 2002-07-09 21:22:31 +00:00
  • bdfdc8e816 checkpoint. moved IPrimaryScreen.h. crs 2002-07-09 17:31:45 +00:00
  • 3138ba373d moved IServerProtocol to server from synergy directory. crs 2002-07-07 15:15:34 +00:00
  • 217313e013 fixed spurious mouse motions when entering/leaving primary screen on X11. crs 2002-07-03 16:25:36 +00:00
  • d813329c0c mistakenly removed mouse button checks when on secondary screens from isLockedToScreen() in earlier checkin. crs 2002-07-01 15:05:49 +00:00
  • 350cd7e2ca checkpoint. crs 2002-07-01 14:01:23 +00:00
  • e267d1dc1c now synthesizing key release events for each pressed key when the client screen is closed. this fixes the bug where the client's keyboard was left with some keys logically pressed when the client died (e.g. using ctrl+c on the client program from the server's keyboard would leave the ctrl key logically pressed). crs 2002-07-01 13:03:16 +00:00
  • a0eba4c337 disabled removing client if no heartbeat is received. we don't want that while testing because it might hide bugs. crs 2002-07-01 13:01:16 +00:00
  • 684ac64742 fixed locking to screen on win32. was using GetKeyboardState() to query keys but that doesn't give us up-to-date information. now using GetAsyncKeyState() if on primary and m_keys if on secondary. crs 2002-07-01 13:00:12 +00:00
  • f4a73c28a2 added win32 screen saver class forgotten in previous checkins. crs 2002-07-01 12:58:52 +00:00
  • ed8ed72f26 synergy hook DLL will now restart itself if a client tries to init() it while it's already running. fixed an uninitialized pointer bug in CServer and some cleanup-on-error code in CMSWindowsPrimaryScreen. also added timeout to read() on IInputStream and a heartbeat sent by clients so the server can disconnect clients that are dead but never reset the TCP connection. previously the server would keep these dead clients around forever and if the user was locked on the client screen for some reason then the server would have to be rebooted (or the server would have to be killed via a remote login). crs 2002-06-26 16:31:48 +00:00
  • d9b2c59d02 client now compresses mouse motion events. this fixes slow dragging on grace, possibly on win32 too. crs 2002-06-26 13:48:08 +00:00
  • 78d28fd6e5 fixed getSize() to be non-blocking in CInputPacketStream. crs 2002-06-26 13:31:06 +00:00
  • 6cc3b50d3b fixed re-entrant calls to X bug. crs 2002-06-26 12:44:52 +00:00
  • 1377882a9f fixed handling of jumping to primary when screen saver starts and back to secondary when it stops. also now redirecting keyboard input to root window when screen saver starts; this allows the user to type in the lock dialog and also effectively discards any input used to deactivate the screen saver. crs 2002-06-23 23:24:22 +00:00
  • 80d11df2f9 checkpoint. crs 2002-06-23 21:54:05 +00:00
  • 76db457830 win32 screen saver now handled. crs 2002-06-23 21:53:31 +00:00
  • 7100e07d2b now disabling disable job timer when forcing screen saver activation. previously the timer would deactivate the screen saver shortly after activation. job timer is restored when the screen saver is deactivated. crs 2002-06-23 21:48:33 +00:00
  • a5391a0a1d checkpoint screensaver changes. now handling xscreensaver dying and restarting or starting after synergy does. also now disabling the screen saver on the client. next step: win32 support. crs 2002-06-23 15:43:40 +00:00
  • 4d113aa235 fixes to get xscreensaver integration working. crs 2002-06-22 20:29:59 +00:00
  • 95a1ce8798 CXWindowsUtil::CErrorLock wasn't XSync()'ing the display before installing and uninstalling the new error handler, causing errors before the lock to be caught and errors during the lock to not be caught. had to add Display* as argument to c'tor. crs 2002-06-22 19:47:27 +00:00
  • 504bfa2def checkpoint. adding screen saver support. only on X so far and untested. also some known problems: not detecting an xscreensaver started after us and not detecting built-in screen saver activation (not sure if we can without using ugly extensions). crs 2002-06-22 19:20:21 +00:00
  • 4e37691a9c added header files to _SOURCES. crs 2002-06-22 17:31:24 +00:00
  • 6c6afcc8cb added comments. crs 2002-06-22 13:55:45 +00:00
  • c961115686 cleanup. crs 2002-06-22 12:09:49 +00:00
  • ede18cb7f3 cleaned up some minor bugs. crs 2002-06-21 17:55:47 +00:00
  • e0f66d162f ported network changes to win32. crs 2002-06-21 17:54:22 +00:00
  • a996db6600 now trying to convert hostname as a dot notation address before trying name lookup. not all platforms will do this for us in gethostbyname(). crs 2002-06-21 16:29:35 +00:00
  • 327af03d3d fixed CTCPSocket::connect() to allow cancellation. crs 2002-06-21 16:19:08 +00:00
  • e2ee2371e0 some cleanup. also fixed a race condition when adding threads to the thread list: the child thread would add itself to the list which means there could be a time interval in the parent where the child thread exists but isn't on the list. the parent now does the adding and removing. crs 2002-06-21 15:18:01 +00:00
  • b83c0c5928 now blocking SIGINT and SIGTERM in restart function. the child should handle the signal and terminate. then the restart function will exit. crs 2002-06-21 15:15:34 +00:00
  • a65bb19723 signal handler thread now dies when SIGABRT is raised. ignoring SIGABRT in sigwait() seems to be a bug in the linux pthread library. crs 2002-06-21 15:14:32 +00:00
  • cec075cb60 fixed bug introduced by previous checkin. calling XCheckIfEvent() multiple times is *not* the same as calling XIfEvent() because the former will re-encounter events that it didn't process previously. to make things simple it now pulls events off the queue and saves them if not processed for selection transfer and puts them back afterwards. crs 2002-06-20 16:27:49 +00:00
  • 2423dc662d speeded up clipboard transfer by avoiding a selection request when it wasn't necessary. (in particular, we were getting the clipboard update time from the owner then emptying the clipboard, so we didn't need to get the time. worse, most owners don't support getting the time and we often timed out.) crs 2002-06-20 14:01:44 +00:00
  • 3d27de39bb checkpoint. trying to fix a delay when sending clipboards on X. crs 2002-06-20 13:35:28 +00:00
  • c4fea1c32b added workaround for bug windows 98 (Me?) and multiple displays: absolute mouse_event() moves don't work except for primary display. crs 2002-06-20 11:13:37 +00:00