I am using an Apple Magic Trackpad as my desktop’s pointing device. Since I started using TotalSpaces my preference for enabling Mission Control is changed form a four finger upwards swipe to a three-finger one (which I always toggle by accident, why i set it to four). Actually the four finger setting is kept and the three finger one is enabled in addition to that.
The defaults setting of com.apple.driver.AppleBluetoothMultitouch.trackpad is named TrackpadThreeFingerVertSwipeGesture and it’s set to a value of 2 after wake-up (from 0 before sleep). This is while TrackpadFourFingerVertSwipeGesture also is still set to 2, something the normal trackpad preference panel doesn’t allow to do (I have to open the prefs panel an set the popup back to three, then to four again to delete the faulty defaults setting (or run a line in Terminal).
This is why I suspect TotalSpaces to change this setting, but I don’t know how to keep if from doing so. If you could check whether it’s actually a bug in TS, or at least someone could check if the have the same symptoms on their machine TS enabled, it would be of great help, as it’s a bit annoying and I would like t get rid od the hook I had to implement.
The settings can be dumped by performing a
defaults read com.apple.driver.AppleBluetoothMultitouch.trackpad
If you set the Gesture for Mission Control to a four finger upward swipe in the Trackpad prefs panel (third tab) and then do a dump, I will get
TrackpadFourFingerVertSwipeGesture = 2;
TrackpadThreeFingerVertSwipeGesture = 0;
after sleeping the computer and waking it up again, I’ll get a
TrackpadFourFingerVertSwipeGesture = 2;
TrackpadThreeFingerVertSwipeGesture = 2;
when executing above defaults read line.
Yes, TotalSpaces changes those settings, but it needs to if you are using the swipe to change space settings. (See transitions prefs).
What do you have set in those settings?
Certainly, TotalSpaces shouldn’t do anything to interfere with your normal usage (and it tries not to).
Basically I am using TotalSpace only to have a animation-free transition between spaces. There are features I’d like to have (like “move this full-screen app to the other monitor”), though I have to say, that I might not use most of its current features.
I tracked down the problem, I think. The issue occurs since I had set the spaces transition setting in TS set to a three finger swipe while I had set the four-finger swipe for mission control (which I mostly use to shift windows between monitors).
I did use the three finger swipe in TS, since when TS is set to shift on a four finger swipe it basically blocks the mission control gesture once TS uses multiple rows of spaces.
However, in certain circumstances TS somehow enables the vertical three finger swipe but doesn’t catch it, so that mission control is still triggered by my four finger swipe I set in system prefs AS WELL AS the three finger swipe enabled (but not cought) by TS. This is actually a setting that shouldn’t occur. Which unfortunately is only made sure by the system prefs ui for the trackpad and not by the trackpad’s driver setting model.
Still I would think that you should check for this situation to occur (four finger swipe set in system prefs) before adding the three finger swipe and then not handling it (might be a buggy case where TS is set to multiple rows, but actually only has one filled so far. You them seem to still enable the vertical swipe gesture and then performing the default (mission control) one instead. Making sure that you only enable the vertical gesture when there are actually multiple rows might fix that).
I fixed it for now by setting TS’ transition gesture to four fingers and explicitly limiting the spaces to a single row.
I think you are correct - TS does enable 3 finger swipe, but if there is only one row then it won’t block Mission Control / App Expose. This is deliberate - some users wanted to use 3 finger swipe for left and right, but up and down for the Mission Control gestures.
So in the case of only 1 row (and 3 finger swipes), TS should read the Mission Control / Trackpad prefs, and it should always block 3 finger swipes unless the user has chosen 3 fingers for Mission Control, in which case it should let them through.
Thank you for discovering this case, I will try to get this fixed asap.