我们有一个OS X应用程序,我们需要阻止弹出字典,以响应三指点击。
最初我们考虑更改受触控板首选项面板影响的值,但无论使用这些值,都不会获取更改后的值。只有首选项面板似乎会影响任何内容。我们尝试的命令是:
defaults write com.apple.driver.AppleBluetoothMultitouch.trackpad TrackpadThreeFingerTapGesture -int 0
defaults -currentHost write com.apple.driver.AppleBluetoothMultitouch.trackpad TrackpadThreeFingerTapGesture -int 0
defaults write -g com.apple.trackpad.threeFingerTapGesture -int 0
defaults -currentHost write -g com.apple.trackpad.threeFingerTapGesture -int 0
如果您注销并重新登录,则设置将生效。这不是我们的选择。
接下来的想法是在应用程序的主视图中覆盖三图触摸事件。我可以收到活动,但我没有看到任何取消活动。例如:
- (void)touchesBeganWithEvent:(NSEvent *)event {
NSSet *touches = [event touchesMatchingPhase:NSTouchPhaseTouching inView:nil];
if(3 == [touches count]) {
// Okay, now what?
}
}
思想?