[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [53379] trunk/blender/intern/ghost/intern: Testing commit for OS X trackpad and scroll events.
Ton Roosendaal
ton at blender.org
Fri Dec 28 20:10:21 CET 2012
Revision: 53379
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=53379
Author: ton
Date: 2012-12-28 19:10:21 +0000 (Fri, 28 Dec 2012)
Log Message:
-----------
Testing commit for OS X trackpad and scroll events.
Now:
- code is wrapped for OS X releases (10.6 and 10.7)
- It now detects scrollwheel (old mouse) and gesture strokes (mighty mouse or trackpad).
If you have 10.6, things will work as for release.
Next todo for tomorrow: make trackpad work actually smooth and not with steps.
Will also try to figure out the device type, to handle mighty mouse differently.
Modified Paths:
--------------
trunk/blender/intern/ghost/intern/GHOST_SystemCocoa.mm
trunk/blender/intern/ghost/intern/GHOST_WindowCocoa.mm
Modified: trunk/blender/intern/ghost/intern/GHOST_SystemCocoa.mm
===================================================================
--- trunk/blender/intern/ghost/intern/GHOST_SystemCocoa.mm 2012-12-28 18:21:07 UTC (rev 53378)
+++ trunk/blender/intern/ghost/intern/GHOST_SystemCocoa.mm 2012-12-28 19:10:21 UTC (rev 53379)
@@ -1577,9 +1577,21 @@
}
break;
+ case NSEventTypeBeginGesture:
+ m_hasMultiTouchTrackpad = true;
+ break;
+ case NSEventTypeEndGesture:
+ m_hasMultiTouchTrackpad = false;
+ break;
+
case NSScrollWheel:
{
- if (!m_hasMultiTouchTrackpad) {
+ int momentum = 0;
+#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1070
+ momentum = [event momentumPhase];
+#endif
+
+ if (!m_hasMultiTouchTrackpad && momentum==0) {
GHOST_TInt32 delta;
double deltaF = [event deltaY];
Modified: trunk/blender/intern/ghost/intern/GHOST_WindowCocoa.mm
===================================================================
--- trunk/blender/intern/ghost/intern/GHOST_WindowCocoa.mm 2012-12-28 18:21:07 UTC (rev 53378)
+++ trunk/blender/intern/ghost/intern/GHOST_WindowCocoa.mm 2012-12-28 19:10:21 UTC (rev 53379)
@@ -595,6 +595,11 @@
[m_window setAcceptsMouseMovedEvents:YES];
+#if MAC_OS_X_VERSION_MAX_ALLOWED >= 1060
+ NSView *view = [m_window contentView];
+ [view setAcceptsTouchEvents:YES];
+#endif
+
[m_window registerForDraggedTypes:[NSArray arrayWithObjects:NSFilenamesPboardType,
NSStringPboardType, NSTIFFPboardType, nil]];
More information about the Bf-blender-cvs
mailing list