I'm trying to replicate the modal behavior of a sheet in Cocoa without actually using a sheet. That is, attaching a borderless child window to the main window and have the child window be the only responder. The parent window should remain key, support resizing, but cannot be navigated/responded to via keyboard or mouse.
So far I've added a borderless NSPanel subclass to the main window, which returns YES from -acceptsFirstResponder, and run the child window modally of the parent. The parent window remains the key window (as the NSPanel subclass returns NO from -canBecomeKeyWindow) but the parent window still has focus. I can use the keyboard to selected a button, which does nothing because of the modal child window. I need the child window to become first responder and calling -makeFirstResponder and setting the -initialFirstResponder view for the window has not effect.