Я реализовал представление табулатуры как подкласс NSControl.Подкласс NSControl не должен меняться firstResponder
Когда я щелкаю его, AppKit попытается обновить firstResponder
моего NSWindow. Поскольку я не хочу, чтобы таба стала firstResponder
(acceptsFirstResponder
возвращает NO
), NSWindow станет firstResponder
. Моя цепочка ответчиков будет состоять из окна и его контроллера, и никакие сообщения о действиях не будут доставлены в подвью под вкладкой (NSOutlineView). Я хотел бы, чтобы NSOutlineView продолжал получать сообщения о действии и события, когда я нажимаю на вкладку.
Каким образом это можно сделать? Невозможно ли остановить NSView от попытки изменить firstResponder
при нажатии?
Я думал об установке панели инструментов nextResponder
в NSOutlineView, но вручную изменение nextResponder
NSView не рекомендуется Apple.