In an earlier post I introduced tiling desktops a.k.a tiling window managers whose notable feature is to make maximum use of screen estate. This post is about how to make Openbox always open maximised windows.
Just in case, make a backup of Openbox main configuration file .config/openbox/rc.xml. This is the file that needs some editing.
Open up the rc.xml and find the section <applications>. This must be a major section, not a command concerning a specific application.
In that section, insert:
<application class="*"> <decor>no</decor> <maximized>yes</maximized> </application> <application type="dialog"> <decor>yes</decor> <maximized>no</maximized> </application>
The first codebit tells Openbox to maximise all windows and lose their decorations. If you want to keep the decorations, don’t use the <decor> tags.
The second codebit (beginning with the line containing “dialog”) tells Openbox to exempt dialogs from maximisation. This works for applications that have their dialogs and prompts properly codified as such. Not all of them are properly done.
Additionally, you may want to exempt some specific apps from getting maximised. For example the messenger:
<application class="Pidgin"> <decor>yes</decor> <maximized>no</maximized> </application>
Note the class property in application tag. Mostly the ordinary application name fits into that property. Another possibility is to use the name property, which should be the text on the titlebar.
To assign class and name properties rightly, use the command-line tool obxprop which probably comes with every Openbox. It’s used as follows:
- In terminal, type obxprop and Enter (it as if stalls, let it be)
- Switch to the window whose class/name info you want – by keyboard shortcut, not with mouse
- Click on the window
- Turn back to the terminal and find the relevant class/name info to put into rc.xml
All necessary changes done, save rc.xml, run openbox --reconfigure and see the effect of the changes to your windowing.