Eu já vi isso antes com aplicativos X. Pense nos passos que precisam ocorrer:
- crie a janela filho
- renderiza o conteúdo inicial na janela filho
- torna a janela filho visível - isto é, "no topo" da pilha, na área de trabalho virtual atual ou na área de trabalho da janela pai. Qualquer um pode funcionar; nem um é perfeito.
Você não quer que a janela seja visível antes do conteúdo inicial ser renderizado; isso faz as coisas parecerem feias. Você quer que ele pré-renderize tudo com a janela escondida em algum lugar, depois traga a janela para a frente.
Geralmente, a lógica "para frente" é tratada em uma rotina de finalização de janela. Pense no que aconteceria no caso em que algo atrapalha o layout da janela. Diga, decisões finais sobre o conteúdo inicial de widgets ou similares. A rotina de finalização pode nunca ser chamada.
Então, uma janela de aparência correta (ou talvez até totalmente) fica do lado de fora, atrás da janela principal do aplicativo.
Se houvesse alguma sujeira em um dos arquivos de configuração no diretório ~/.mozilla-thunderbird
, isso poderia ter causado uma falha no segundo passo acima (renderização da janela filho).