Commit Graph

51 Commits

Author SHA1 Message Date
Andrew Nelless df88faaad8 #5620 Convert OSXScreen into Objective C++ 2016-10-12 15:43:01 +01:00
Andrew Nelless f3d1470e58 Brutally replace all reinterpret_casts with static_casts 2016-10-05 12:46:16 +01:00
Andrew Nelless c418d66f60 #3305 Rename macOS MediaKeySimulator to MediaKeySupport 2016-09-26 11:58:33 +01:00
Andrew Nelless e76b4a7747 #3305 Send macOS media key events to clients 2016-09-26 11:58:33 +01:00
Andrew Nelless 6294679fcd #3305 Detect media keys on macOS server 2016-09-26 11:58:33 +01:00
Andrew Nelless 6d5b2707c8 #3305 Add logging for unknown macOS events 2016-09-26 11:58:33 +01:00
Andrew Nelless c3c0913633 Update company copyright notice 2016-09-26 11:58:33 +01:00
Andrew Nelless 36be2051c2 Change company domain name 2016-09-26 11:58:33 +01:00
Jerry (Xinyu Hou) 929431f5fc Remove support for OSX 10.4 and below #2765 2016-08-08 14:27:13 +01:00
Asbjorn Kjaer c7e723030b Fix log string to use the re-mapped button instead of the input ID #2975 2016-08-08 14:27:13 +01:00
Asbjorn Kjaer 5901fa8aed Correctly translate mouse events to the right and middle buttons #2975 2016-08-08 14:27:13 +01:00
Erik Swan 5e35fe2c1b Fix mouse speed increase with sleep on Mac server
As reported in #451, with the Mac server, sleeping and resuming (on the
server) causes the mouse speed to double on the client upon resume.

Fix by removing the CFRunLoopSource from the run loop on screen disable
before releasing it. CFRunLoopAddSource in enable() retains the
CFRunLoopSource, so even though the source is released in disable(), the
run loop still has a copy. When the server comes out of sleep and the
screen is enable()'d, another event tap and run loop source are created
and added to the run loop, so the callback is now being called twice for
every mouse movement, and so on for every additional time the server
sleeps.

This is a better approach than the fix in 267f3ac41f, because although
that fixes the issue by disabling the event tap before the event tap and
run loop source are released, a memory leak still occurs since they are
retained by the run loop.

Additional references on the behavior of CFRunLoopAddSource:
https://developer.apple.com/library/mac/documentation/CoreFoundation/Reference/CFRunLoopRef/index.html#//apple_ref/c/func/CFRunLoopAddSource
http://www.cocoabuilder.com/archive/cocoa/242438-trouble-with-event-taps.html
2016-03-15 12:57:54 -07:00
Jerry (Xinyu Hou) 2fb36c4f86 Revert "Revert "workaround for Fast cursor on any client with Mac server #451""
This reverts commit 6470240379c896ee13ee98b9a8c951d22f4351c1.
2016-03-15 12:51:22 -07:00
Jerry (Xinyu Hou) 8a2106a09e Revert "workaround for Fast cursor on any client with Mac server #451"
This reverts commit 267f3ac41f.
2015-11-24 11:40:04 -08:00
Jerry (Xinyu Hou) c259af9b41 Fix code style 2015-11-19 13:46:48 -08:00
kahiroka 267f3ac41f workaround for Fast cursor on any client with Mac server #451 2015-06-19 17:20:26 -07:00
Xinyu Hou 5cbcd74028 Fixed using NOTE level logging on Mac #4745 2015-06-01 23:42:58 +01:00
Xinyu Hou 49ac320f97 Refactored clipboard event into ClipboardEvent #4601 2015-05-20 19:09:54 +01:00
Nigel Armstrong d71304ee55 Modified header of every file COPYING to LICENSE
Modified to match the updated name of the license file
2015-05-06 22:12:44 -04:00
jpmcmu 9978a85a4f Added modifier flags to mouse events as a fix for sticky keys. 2015-04-22 19:33:25 -04:00
James McMullan 1bbd086a17 MacOSX Double / Triple Click Fix
This patch corrects issues with double click and adds triple click to
MacOSX. Double click was functioning but double clicking and then
dragging would not work.
2015-03-21 13:41:00 +00:00
Nick Bolton ecd51d231b Revert "Revert "Revert "Merge branch 'bug3784-MacOSXDoubleTripleClickFix' of https://github.com/jpmcmu/synergy into jpmcmu-tripple-click-fix"""
This reverts commit 7f721ee7b1.
2015-03-21 13:38:20 +00:00
Nick Bolton 7f721ee7b1 Revert "Revert "Merge branch 'bug3784-MacOSXDoubleTripleClickFix' of https://github.com/jpmcmu/synergy into jpmcmu-tripple-click-fix""
This reverts commit 32323bc0d1.
2015-03-21 11:42:37 +00:00
Nick Bolton 32323bc0d1 Revert "Merge branch 'bug3784-MacOSXDoubleTripleClickFix' of https://github.com/jpmcmu/synergy into jpmcmu-tripple-click-fix"
This reverts commit b5effc0591, reversing
changes made to 297100c88a.
2015-03-21 11:36:38 +00:00
James McMullan 56b54da915 MacOSX Double / Triple Click Fix
This patch corrects issues with double click and adds triple click to
MacOSX. Double click was functioning but double clicking and then
dragging would not work.
2014-12-04 15:15:38 -05:00
Nick Bolton 41d6080028 changed company name in copyright notice 2014-11-11 13:52:03 +00:00
Nick Bolton e8e156f0e2 dropped "c" prefix from class names 2014-11-11 13:51:47 +00:00
Xinyu Hou 4aa43d6995 Merge branch '64bit' of https://github.com/petroules/synergy into petroules-64bit 2014-10-22 11:40:00 +01:00
Xinyu Hou 504e41966e Carbon loop not ready within 5 sec #4002
Port fix from enterprise.
2014-10-21 15:48:04 +01:00
Jake Petroules 7dd2db25ec Add support for building with 64-bit architectures on OS X.
This patch brings full 64-bit compatibility to Synergy on OS X by
replacing all obsolete 32-bit only Carbon functions with modern
equivalents. All functions introduced have been available since 10.4 so
this won't affect the minimum deployment target. Specifically:

Creating an empty CGEvent and getting its location is behaviourally
identical to GetGlobalMouse, and yes, both are in flipped coordinates.
This was tested with a multi-monitor configuration as well.

TrackMouseLocationWithOptions is behaviourally identical to
GetGlobalMouse in these cases because the timeout was 0 and none of the
other out params were used, except for the MouseTrackingResult in one
call was checked against kMouseTrackingTimedOut. Since the timeout was 0
and not kEventDurationForever, that value never could have been returned
anyway.

Instead of attempting to define SIntXX and UIntXX manually, MacTypes.h
is included on OS X. These types were wrong in 64-bit mode because of
this, causing type redefinition errors.
2014-10-15 19:29:49 -07:00
jerry 7e562273d5 [no-issue]
revert to r2421
2014-09-15 15:17:07 +00:00
jerry 1805dd7900 issue #575 - Cannot build x86_64 or ppc64 on Mac OS X
applied patch by Jake Petroules
2014-09-15 13:04:43 +00:00
jerry c4dd6eb61c sticky keys fix doesn't work, may make things worse - backed out [no-issue] 2014-08-01 10:35:16 +00:00
jerry 995730a646 issue #18 - Sticky modifier/meta keys
- improved on Mac.
2014-07-02 13:25:49 +00:00
jerry 507abdcbfb issue #4072 Carbon loop not ready within 5 sec
added lock to all condVar
2014-06-02 16:07:58 +00:00
jerry 9feaa959f1 issue #4072 - Carboon loop not ready within 5 sec
issue solved
2014-06-02 11:04:09 +00:00
jerry f87bd9e860 - checked filename's validation before sending drag info
- refactored duplicated write to drop dir code
- removed legacy member variables
- fixed code style
- fixed typo
2014-05-14 14:45:15 +00:00
Nick Bolton d9f90e319e changed synergy-foss.org to synergy-project.org 2014-05-08 07:33:35 +00:00
jerry 9621cba99e - redesigned drag information protocol
- used DragInformation to encapsulate information and helper functions.
- renamed parameters in sendDragInfo function.
2014-05-06 18:26:47 +00:00
jerry ff42afc36c made drag info function name more consistent 2014-05-01 13:56:07 +00:00
jerry f773ff3d00 refactored duplicated code in dragInfoReceived
refactored fakeDraggigFiles interface
2014-04-30 18:54:32 +00:00
jerry b876c0daf3 fixed compile error on 10.6 and 10.5 2014-04-22 16:43:04 +00:00
jerry b85a9b628e used a hidden drop window to get drag filename 2014-04-22 10:33:16 +00:00
jerry 7b8cdb6b38 used really drag file extension 2014-04-17 17:25:41 +00:00
jerry de65f71312 removed left control key hack for faking drag on mac 2014-04-17 17:10:36 +00:00
jerry 45c1cde698 fixed: events were added before event queue was ready, caused debug build assert failure.
removed sleep hack in favour of cond var wait.
2014-04-17 10:56:25 +00:00
Nick Bolton 826cd7e60b reintroduced AXIsProcessTrusted call, shouldn't break ax stuff 2014-03-17 17:25:18 +00:00
Nick Bolton 407378fbc5 Task #3951 - Clear filename stored in synwinxt on mouse up
- renamed some functions for file drag/drop to be more similar to existing
- improved log messages for the library loader
- removed hack that blocked .exe and .lnk files (annoying for developers)
- removed hack that always clears dragging filename (not very robust)
2014-03-17 13:10:29 +00:00
Nick Bolton 19bcb9dfae fixed: osx compile errors from last commit 2014-02-28 13:06:25 +00:00
Nick Bolton 4675f29a4c code style fixes:
- reordered includes to prevent accidental dependencies.
- moved arch specific files into their own folder (easier to include with cmake).
- renamed non-class files to reflect new code style (lower case with underscores).
- using full relative paths for includes (easier for understanding dependencies).
- using #pragma once instead of classic-style header guards.
2014-02-28 12:36:45 +00:00