Por que eu tenho que chamar showWindow no meu NSWindowController duas vezes em 10,5?

Eu tenho uma subclasse de um NSWindowController que eu estou usando para carregar uma janela de um bico e mostrá-lo na tela. Abaixo está o código que é chamado quando eu quero mostrar a janela. No 10.6, quando showCustomWindow é chamado, a janela é exibida, mas no 10.5 esse método deve ser chamado duas vezes para que a janela seja exibida.

-(IBAction)showCustomWindow:(id)sender 
{
   if(!windowController){
       windowController = [[MyWindowController alloc] initWithWindowNibName:@"MyWindow"];
    }

    [windowController showWindow:self];
}

A janela "Visible at Launch" está marcada e desmarcá-la não parece fazer diferença.

Editar: Eu percebi que o problema que eu estava tendo não estava relacionado ao meu NSWindowController ou showWindow. Eu tinha configurado corretamente. No entanto, descobri que nem todas as classes implementam o awakeFromNib. Em uma das minhas subclasses NSView (que estava na ponta que eu estava tentando carregar), eu estava chamando [super awakeFromNib] que estava me dando um "não responde ao seletor" (mas apenas no 10.5 que é estranho). Então, eu poderia ter acabado de tirar [super awakeFromNib], mas optei por esperançosamente mais robusto:

if([NSView instancesRespondToSelector:@selector(awakeFromNib)]) {
    [super awakeFromNib];
}

Isso permitiu que meu bico carregasse normalmente e mostrasse o Windows para funcionar corretamente.

questionAnswers(3)

yourAnswerToTheQuestion