O que controla os tamanhos e posições da janela salvos / padrão no OS X?

4

Estou executando o Chrome e o Chromium no meu Mac. Nunca noto um problema com o Chrome, mas com o Chromium ele sempre parece ter um tamanho e uma posição muito pequena e muito pequena na tela.

Eu sei que existem algumas bons utilitários para gerenciamento de janelas , mas o que controla o tamanho / posição padrão das janelas no OS X?

    
por cwd 23.02.2012 / 17:32

1 resposta

3

Depende do programa. A maioria dessas configurações da janela "principal" (ou, mais precisamente, configurações da janela "documento") são codificadas permanentemente. Eu acredito que eles usam o que a Apple fornece em seus frameworks de gerenciamento de janelas, como por exemplo o Preview.app.

Na maioria dos aplicativos, somente as propriedades NSWindow das janelas auxiliares são armazenadas nas Listas de propriedades do programa, enquanto as configurações da janela do documento podem ser armazenadas em outro local. Isso é o que o Chrome faz, pois é de plataforma cruzada e usa um formato de preferências compartilhadas em vários computadores.

Por exemplo, com.macromates.textmate.plist tem a seguinte entrada:

NSWindow Frame New File Sheet
568 932 386 209 0 0 1920 1178

Você pode alterá-los e acredito que eles usam coordenadas e origens de retângulo para representação, sendo os primeiros quatro valores NSRect :

  • coordenada X à esquerda superior
  • coordenada Y à esquerda superior
  • largura
  • altura

TextMate faz armazenar sua posição na janela principal em OakDocumentWindowFrame , mas como já mencionei, este não é o caso de todos os aplicativos baseados em documentos.

O Google Chrome usa sua própria maneira de lidar com isso, ou seja, em um arquivo JSON. Ele tem uma configuração de window_placement e você pode encontrá-lo em:

~/Library/Application Support/Google/Chrome/Default/Preferences

Veja como fica:

"window_placement": {
         "always_on_top": false,
         "bottom": 1046,
         "left": 0,
         "maximized": false,
         "right": 1680,
         "top": 22,
         "work_area_bottom": 1046,
         "work_area_left": 0,
         "work_area_right": 1680,
         "work_area_top": 22
      },
    
por 23.02.2012 / 17:47