在 OS X 中,什么控制已保存/默认的窗口大小和位置?

在 OS X 中,什么控制已保存/默认的窗口大小和位置?

我在 Mac 上同时运行 Chrome 和 Chromium。我从未发现 Chrome 有问题,但 Chromium 似乎总是以非常奇怪且太小的尺寸和位置在屏幕上启动。

我知道有一些很好的窗口管理工具,但是什么控制 OS X 中窗口的默认大小/位置?

图像

答案1

这取决于程序。大多数这些“主”窗口设置(或更准确地说是“文档”窗口设置)都是硬编码的。我相信他们使用 Apple 在其窗口管理框架中提供的内容,例如 Preview.app。

对于大多数应用程序来说,只有NSWindow辅助窗口的属性存储在程序的房产列表,而文档窗口设置可能存储在其他地方。Chrome 就是这样做的,因为它是跨平台的,并且在多台计算机上使用共享的首选项格式。


例如,com.macromates.textmate.plist有以下条目:

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

你可以改变这些,我相信他们使用矩形坐标和原点来表示,前四个值是NSRect

  • 左上角X坐标
  • 左上角 Y 坐标
  • 宽度
  • 高度

文本伴侣将其主窗口位置存储在下OakDocumentWindowFrame,但正如我已经提到的,并非所有基于文档的应用程序都是如此。


Google Chrome 使用自己的方式处理此问题,即在 JSON 文件中。它有一个window_placement设置,您可以在以下位置找到它:

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

它看起来是这样的:

"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
      },

相关内容