**System Information**
Operating system: macOS 11.1 Big Sur build 20C69
Graphics card: n/a
**Blender Version**
Broken: Top of tree git pull from today
Worked: probably never since 2.8
**Short description of error**
Wacom Intuos Pro tablets support touch in addition to pen entry. When using touch, two fingers will scroll up and down. In Blender, two finger touch should work like an Apple touch pad or Apple magic mouse: two finger movement will orbit the view; holding down command zooms, holding down shift pans. Instead, it simply does nothing.
**Exact steps for others to reproduce the error**
Blender.app, default cube. Place two fingers down on a Wacom Intuos Pro tablet and move them around; it should orbit, but nothing happens. Well, the bottom status bar flickers back and forth as though command/shift or alt is pressed.
There are two reasons why this happens.
1. Blender has incorrect Cocoa/AppKit code. I worked on AppKit for ~13 years at Apple. Below is a diff that addresses some of the issues. The code attempts to keep track of m_multiTouchScroll, but this isn't needed. It should key off of hasPreciseScrollingDeltas instead. I tested this diff with: Apple Magic Mouse, old school Apple scroll wheel mouse, Wacom tablet; all things work the same (except Wacom, which has the bug I'm reporting fixed). There is also a comment about intuos5, but that seems to be incorrect and outdated, but I don't have an Intuos 5 to test with.
{F9861683}
2. Wacom's tablet touch drivers do link-checked behavior based on the bundle identifier "org.blenderfoundation.blender". In other words: they change the touch behavior when they see the target application is Blender. Wacom needs to fix this, but I'm not sure how to log a bug report for them.
To prove this, I created the sample application:
{F9861693}
The sample application has the blender bundle identifier set, as seen in this screen shot:
{F9861701}
In ViewTest.m I log the flagsChanged:
- (void)flagsChanged:(NSEvent *)event
{
NSLog(@"%@", event);
}
If you run the app and do a two finger scroll in the window you will see some flagsChanged logged, which is very strange because Shift/Alt/Cmd have not been pressed! Wacom is faking them for some reason, and changing the scrolling data, which messes up Blender.
Change the applications's bundle identifier to "org.blenderfoundationXX.blender" (you can simply edit the info.plist) and run it again; it will then behave correctly.
-
I don't know how to fix item 2 for Blender; I'm fixing it in my own build of Blender by changing the bundle identifier to org.blenderfoundation.bl3nder after it is built. I looked into identifying the events, and I can could identify the source as coming from the wacom driver but I can't fix them.
I'm trying to find a contact at Wacom to have them fix this, but once it is fixed we still need item 1 fixed.