我通常将 Firefox 最大化,但有时我想将其设置为覆盖大约一半屏幕的大小。不幸的是,当我取消最大化窗口时,它会缩小到我上次使用的大小,然后立即调整大小以覆盖整个屏幕。有什么方法可以让它保持上次取消最大化时的大小吗?
编辑:只是为了澄清,只有当我自上次取消最大化后关闭 FireFox 时才会这样做 - 如果它仍在运行,它就可以正常工作。
答案1
我将向您展示三种解决方案,每种解决方案都有其缺点,但我希望至少其中一种是您能接受的。
JavaScript
这可能是 唯一有用的应用window.resizeTo
。输入
javascript:window.resizeTo(1280,512)
到地址栏中。您可以轻松地将其转换为书签。
缺点
- 如果您关闭了JavaScript,则不起作用。
- JavaScript 拦截器可能会产生干扰(但 NoScript 不会)
Allow scripts to: Move or resize existing windows
使用 Firefox 的默认设置,但如果您从下方删除了复选标记,则不起作用Edit/Preferences/Content/Enable JavaScript/Advanced...
窗口管理器
wmctrl -r Firefox -e 0,-1,-1,1280,512
缺点:
- 你必须安装 wmctrl(有一个控制端包裹Fedora)
- 需要与 EWMH/NetWM 兼容的 X 窗口管理器(但支持 KDE 和 GNOME 的默认窗口管理器)
- 如果你打开了多个 Firefox 窗口,则必须明确指定要调整哪个窗口的大小。请参阅wmctrl 文档至于如何做到这一点,这并不难。
命令行
最明显的解决方案是使用所需的窗口几何形状启动 Firefox。它启动时不会最大化,但如果您最大化然后再次取消最大化,它会缩小到之前的大小。
通常你可以像这样确定 X Window 应用程序的窗口几何形状:
firefox -geometry 1280x512+0+0
这对我来说不起作用,所以我查找了 Firefox 命令行选项(缩短):
Usage: firefox [ options ... ] [URL]
where options include:
-height <value> Set height of startup window to <value>.
-width <value> Set width of startup window to <value>.
-no-remote Open new instance, not a new window in running instance.
我试过
firefox -no-remote -height 1280 -width 512
但那也没用。我认为这是 Firefox 的一个错误,也许它在其他版本或其他平台上有效。
缺点
- 对于我在 Ubuntu 9.04 上使用 Firefox 3.0.12 时,上述两种方法均不起作用。
- 只要您不手动更改窗口大小它就会起作用。
答案2
这不是 Linux、Windows 或 Mac OS X 上的默认行为。
尝试以安全模式或新配置文件启动 Firefox。如果不起作用,请开始禁用扩展程序,直到找到罪魁祸首。
Mozilla 知识库有关于以安全模式启动 Firefox 的说明。
您可以按照以下步骤轻松创建新的配置文件(而不会损害您当前的配置文件)配置文件管理器说明。
答案3
几年过去了,这个问题仍然没有得到解答。我编写了一个小实用程序,允许我在启动时指定 Firefox 窗口的位置。看看http://www.ipsec.info/w/t/override-gtk-geometry.c。源代码中包含了编译和使用说明。
目前它只允许您指定启动位置和大小。您可以调整源以满足您的需要,例如在运行时根据某些事件调整窗口大小。