Openbox:通过ob菜单启动一个最大化的应用程序

我正在尝试配置我的 Openbox 的 menu.xml 文件,并且我想定义一个菜单项,用于启动一个最大化的应用程序,比如 Firefox。
<menu id="root-menu" label="OpenBox 3">
    <item label="firefox">
        <action name="Execute">
            <execute>firefox</execute>
        </action>
        <action name="Maximize" />
    </item>
</menu>

但是它不起作用。经过一些测试,我认为只有第一个动作被执行。
有人有解决办法吗?
1个回答

这里有一种方法可以在使用Openbox窗口管理器时将所有应用程序都最大化打开。(我不知道OP使用的发行版,所以建议采用两种稍微不同的方法。)
对于非Lubuntu的发行版: 为了安全起见,备份`/etc/xdg/openbox/rc.xml`文件 用文本编辑器打开`/etc/xdg/openbox/rc.xml`文件 滚动到文件底部,你应该看到: `` ``
在包含``的那一行上面,插入以下内容: `` `yes` `` 保存`rc.xml`文件 打开终端并运行`openbox --reconfigure`命令。这将使Openbox意识到更改。如果没有生效,请注销并重新登录。 从现在开始,所有的应用程序将会最大化打开。
来源)
对于Lubuntu 12.10用户,编辑~/.config/openbox/lubuntu-rc.xml而不是/etc/xdg/openbox/rc.xml。(我验证了这一点,因为我正在使用Lubuntu 12.10。)
如果你决定不想让所有应用程序都最大化打开,而只是某些特定的应用程序,你需要使用以下代码代替上面的代码对于每个你想要最大化的应用程序
<application class="......"> (见下文)
<maximized>yes</maximized>
</application>

请注意,找到“应用程序类”的方法是通过使用“xprop”命令。 您需要打开一个终端窗口以及需要查找其类的应用程序的窗口。 在终端窗口中键入“xprop _OB_APP_CLASS”,然后按下“Enter”键。 注意光标的外观已经变成了十字线。 现在,使用鼠标点击您需要的应用程序的窗口。 然后,回到终端中查看输出。例如,如果我运行“xprop _OB_APP_CLASS”并点击属于Google Chrome的窗口,我会看到:“_OB_APP_CLASS(UTF8_STRING) = "Google-chrome"”,而“Google-chrome”,包括引号,就是要输入的应用程序类。 您需要为每个您希望最大化打开的应用程序执行此操作。
“<maximized>yes</maximized>”的一个副作用是不仅主窗口,其他窗口也会最大化打开。例如,在Firefox中,按下“Alt”键,然后选择“编辑”>“首选项”或“帮助”>“关于”将导致面板最大化。在Chrome的任务管理器(Shift+Esc)中也是如此。
如果这种行为是不可取的,需要运行xprop来查看主窗口和次要窗口是否可以区分开来。
对于Chrome、Firefox、Opera和Seamonkey浏览器,以下代码只会最大化浏览器窗口本身,而不是"内部"窗口:
<application role="browser">
<maximized>yes</maximized>
</application>

是的,但是窗口并没有真正最大化,我仍然可以移动它。那么其他应用程序该怎么办? - arthropode
我已经重新编写了答案,以便为所有应用程序提供真正最大化的窗口。 - user25656