Re: [dwm] Xinerama in the right way, bar position, togglebar(), setmwfact()?

From: Anselm R. Garbe <>
Date: Thu, 6 Mar 2008 09:50:00 +0100

On Wed, Mar 05, 2008 at 05:42:27PM -0500, Ritesh Kumar wrote:
> The flexibility is definitely good, however, it clutters the config.h with a
> lot of dwm internals, may be unnecessarily. Worse of all, it may still not
> be flexible enough for another person to modify it for a Xinerama layout of
> his own.

Well, the design decision I made so far is, that there should
only be a single bar at a certain screen in a multihead setup.
Thus those new values in config.h which replace BARPOS. The bar
represents the internal state of dwm, the tags in use, the
layout algorithm, the title of the focused client and some
status text. I learned due to my experiments during the last
weeks, that several bars with duplicate information is not a
nice idea.

However, more complex layouts, especially layouts for
multiheads, need a separate layout function which can be
included using #include "your_layout.c" in config.h. I don't
want that a layout developer has to bother about drawing the
bar, he only has to bother about how to calculate window

So it doesn't hurts that much, that there is M{X,Y,W,H} and
T{X,Y,W,H}, a more advanced layout which does Xinerama calls
does not need to make use of those definitions at all.

I think it is really the best to keep things as simple as they
are -- and keeping the layout algorithm as is. The above
decision to allow for more fine-grain bar positioning allows all this.

> Ultimately, it depends on how fundamental you think the stack/monocle layout
> is to dwm. I really think that multihead setups offer many more feasible
> design choices than the highly popular stack/monocle layout for single
> monitor setups.

I think that the tiled layout is a fundamental layout in dwm,
and it scales well two 2 screens already. It won't work for 3,
but the number of people using 3 screens is very low, so those
might prefer a separate layout algorithm instead.

Kind regards,

 Anselm R. Garbe >< >< GPG key: 0D73F361
Received on Thu Mar 06 2008 - 09:50:00 UTC

This archive was generated by hypermail 2.2.0 : Sun Jul 13 2008 - 15:24:04 UTC