Mac OS X, Intuos tablet fix
Touch input events map nicely to trackpad input now. However, I noticed the event values are a factor 10 scaled larger compared to other touch delta's. Makes using touch input on the tablet not so nice. I found a hack to detect Wacom events, but if it works for more devices? Anyway - for me the Wacom works perfectly smooth for view manipulations now.
This commit is contained in:
@@ -1599,7 +1599,8 @@ GHOST_TSuccess GHOST_SystemCocoa::handleMouseEvent(void *eventPtr)
|
||||
}
|
||||
break;
|
||||
|
||||
/* these events only happen on swiping trackpads */
|
||||
/* these events only happen on swiping trackpads or tablets */
|
||||
/* warning: using tablet + trackpad at same time frustrates this static variable */
|
||||
case NSEventTypeBeginGesture:
|
||||
m_hasMultiTouchTrackpad = 1;
|
||||
break;
|
||||
@@ -1633,10 +1634,18 @@ GHOST_TSuccess GHOST_SystemCocoa::handleMouseEvent(void *eventPtr)
|
||||
double dy;
|
||||
|
||||
#if MAC_OS_X_VERSION_MIN_REQUIRED >= 1070
|
||||
int phase = [event phase];
|
||||
|
||||
/* with 10.7 nice scrolling deltas are supported */
|
||||
dx = [event scrollingDeltaX];
|
||||
dy = [event scrollingDeltaY];
|
||||
|
||||
/* however, wacom tablet (intuos5) needs old deltas, it then has momentum and phase at zero */
|
||||
if (phase == 0 && momentum==NULL) {
|
||||
dx = [event deltaX];
|
||||
dy = [event deltaY];
|
||||
}
|
||||
|
||||
#else
|
||||
/* trying to pretend you have nice scrolls... */
|
||||
dx = [event deltaX];
|
||||
|
Reference in New Issue
Block a user