I have an NSTextField which uses as an extended NSTextFieldCell, which creates a custom field editor, that intercepts and records key events. (Knowing the key events is important for the application, but the text field is still supposed to work as usual, by calling the [super ...]
method). This is what the official documentation suggests for this problem.
I do receive most keyUp
events while typing, but in certain cases I don't get one. It seems to happen, when pressing a key combination that has an action attached to it. E.g. Cmd-Shift-Left
is not issuing an keyUp event. That input makes the whole line from point to the beginning appear selected, but already when the keyDown
is received.
In those cases where it is missing, when looking at -performKeyEquivalent:
by overriding it, I see this is called. Why is the keyUp not delivered?
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…