stumpwm-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[STUMP] An idea: dynamic window management


From: Tassilo Horn
Subject: [STUMP] An idea: dynamic window management
Date: Thu, 25 Jan 2007 21:14:34 +0100
User-agent: Gnus/5.110006 (No Gnus v0.6) Emacs/22.0.93 (gnu/linux)

Hi all,

I play around with StumpWM since two days and I really like it, so
thanks a lot to the devs.

But one thing I don't like is that I have to manage windows and frames
on my own (splitting, assigning windows to frames, etc.). IMO this could
(and should) be done by the window manager.

A window manager which does this in an excellent way is DWM [1] and I
wonder if this style of managing windows could be implemented on top of
StumpWM as a something like a "minor mode".

Ok, this is how DWM manages frames/windows:

- The screen is divided into a Master area and a Slave area:

    +--------------------+-------------+
    |                    |             |
    |                    |   Slave     |
    |                    |             |
    |                    |             |
    |       Master       +-------------+
    |                    |             |
    |                    |   Slave     |
    |                    |             |
    |                    |             |
    +--------------------+-------------+

  In this illustration there's one window in the master area and two in
  the slave area.

- Each new window creates its own frame. Closing the window deletes its
  frame. So there's no real distinction between frame and window (so I
  go on talking about windows). Each window is maximized as far as
  possible. This implies, that you never see the root window unless you
  close all windows. Another consequence is that there are no minimized
  or invisible windows. All windows in the current group are either in
  the master or slave area.

- You can configure how many windows fit into the Master area. By
  default it's only one. If more than one windows are allowed, they will
  be displayed by splitting the master area vertically.

- The windows in the slave area are stacked by splitting the slave area
  vertically.

- New windows appear in the master area and get the focus. If the master
  area is full, the oldest master area window is prepended to the slave
  area.

- If you close a master area window, the window on top of the slave area
  enters the master area.

Now you have some functions to

  - permute the last selected master area window with the currently
    selected window.

  - grow/shrink the master area width for let's say 15 pixels

  - increase/decrease the number of master area windows

I think that's nearly all.

What do you think about it?

Best wishes,
Tassilo Horn (aka tsdh on irc)

Footnotes: 
[1] http://dwm.suckless.org




reply via email to

[Prev in Thread] Current Thread [Next in Thread]