如何在不取消选中多显示器设备中的“显示器有单独空间”选项的情况下防止 Dock 在 macOS 中的显示器之间跳转?

如何在不取消选中多显示器设备中的“显示器有单独空间”选项的情况下防止 Dock 在 macOS 中的显示器之间跳转?

我有一个多显示器设置。

默认情况下,Displays have separate SpacesMacOS 中会选中该设置,如果您将鼠标悬停在任何一台显示器的底部,即使是无意的,也会导致 Dock 在显示器之间跳转,这非常烦人且令人沮丧,因为它会导致应用程序收缩以便为 Dock 腾出空间,并且当 Dock 再次跳转到另一台显示器时,之前显示器上的应用程序不会重新扩展 - 因此应用程序中的可用空间量会因为这种不断的 Dock 跳跃而不断减少(这本身就很烦人)。

此解决方案可禁用码头跳跃:

转到“系统偏好设置”>“任务控制”,然后取消选择“显示器有单独的空间”选项

...是不可接受的,因为这样我就无法在一台显示器上播放全屏视频,而在另一台显示器上使用笔记应用程序——当Displays have separate Spaces未选中时,将视频切换为全屏会导致其他显示器变暗。

当我将其中一个窗口切换到全屏模式时,如何禁用显示器之间的 Dock 跳跃而不使所有屏幕变暗?

如果没有本地方法可以做到这一点,请分享一个允许我做到这一点的第三方实用程序。

答案1

我还没有找到任何解决方案来将 Dock 永久锁定到 macOS 中的单个屏幕。但您可以将用户autohide-delay默认值设置为更大的值,这也会影响 Dock 移动屏幕所需的时间。

命令:

defaults write com.apple.dock autohide-delay -float 9999999

该值以秒为单位。我已将时间设置为 5 秒,这样我就可以随时有意地移动它,但这样可以消除无意的移动。

还值得注意的是,在某些配置中,操作系统似乎会忽略此值。我注意到行为略有不同,例如当您将屏幕以垂直设置排列在一起时。

最初发现于这条 Reddit 评论

答案2

我认为将秒数设置为低而不是高似乎更适合我的设置,并且添加killall Dock会使用新设置重新启动码头。

defaults write com.apple.dock autohide-delay -float 2; killall Dock

我在 MacOS Sonoma 上安装了宽屏显示器,顶部放置了一台笔记本电脑,底部放置了一台。即使将显示器设置为主显示器,当我睡眠/重启/打开笔记本电脑时,它似乎总是在底部启动底座,并且将其设置为9999999会使将其移回需要更长的时间。设置为 1-2 秒意味着当光标位于底部时它会立即移动到主显示器。

答案3

相关内容