How can I override the 3-finger tap behavior in a NSTextView?

cocoa-touch, macos

Solution

Reacting on a triple tap in a `NSTextView` can most easily be done by overriding `quickLookWithEvent:`.

-(void)quickLookWithEvent:(NSEvent *)event
{
    NSLog(@"Look at me! %@", event);
}

It also taught me that you can triple tap anything to invoke Quick Look on it.

Problem

On Mac OS X, doing a 3-finger tap on a word pops up a window with a definition of the word. This idiom is also used in Xcode, where doing a 3-finger tap over a symbol shows its documentation, much like if it had been alt+clicked. I would like to do something similar to that and display definitions when users of my application do a 3-finger tap on certain tokens in a `NSTextView`. However, I can't find how to detect that a tap has been done with 3 fingers. Could someone help me with that? EDIT If this reminds anything to anyone, three events (caught by overriding `[NSApplication sendEvent:]`) are triggered when you do this kind of tap: ``` NSEvent: type=SysDefined loc=(270.918,250.488) time=417954.6 flags=0x100 win=0x0 winNum=28293 ctxt=0x0 subtype=6 data1=1818981744 data2=1818981744 NSEvent: type=SysDefined loc=(270.918,250.488) time=417954.6 flags=0x100 win=0x0 winNum=28293 ctxt=0x0 subtype=9 data1=1818981744 data2=1818981744 NSEvent: type=Kitdefined loc=(0,263) time=417954.8 flags=0x100 win=0x0 winNum=28306 ctxt=0x0 subtype=4 data1=1135411200 data2=1132691456 ```

Original source