Chapter 3. larswm Internals

Table of Contents
Associating Windows With A Virtual Desktop
Hidden Windows
Focus Handling


This is a more in-depth description of how exactly it decides where windows goes.

Every time a window is mapped or unmapped, or (if skip_focus is off) you focus a new window on the tiled subdesktop by clicking on it the following process is executed:

  1. The width of the two tracks are calculated. This is by default set up so the left track uses 65% of the screen width, but it can be configured in the .larswmrc file.

  2. It calculates how many windows should be in each track, one in the left track and the rest in the right.

  3. The height of each window in each track is calculated.

  4. It goes through the list of all windows and places them in the designated spot.

  5. Transient windows of the current window are recursively put on top so that you never will lose a dialog box under your main window.

  6. After this it returns to the event loop.

That is pretty much it. When you click on an inactive window in the right track, it will pop over into the left track, and the window that were there will pop over to the top of the right track. Hence, the right track will contain windows in the order that they were in the left track, starting with most recent.