You are not logged in.

#1 2014-10-16 04:04:21

ANOKNUSA
Member
Registered: 2010-10-22
Posts: 2,141

Just What Is A "Dynamic" Window Manager?

Perhaps this would be bertter in the Off-Topic sub-forum, 'cuz while I'm hoping it might help better define some *nix-related concepts, it's really just to satisfy my own curiosity. This is a line from the Window Managers entry in the Arch Wiki:

Dynamic window managers can dynamically switch between tiling or floating window layout.

I've seen this same bit of information make the rounds in various *nix-related forums and wikis, on Reddit, in blogs, all over the place. Here's the thing, though---since I first started playing with stand-alone window managers, I've installed, configured and (at least briefly) used all of the following:

- Awesome
- Xmonad
- dwm
- i3
- WMFS
- WMFS2
- Subtle
- MonsterWM

And while I haven't ever used them for any real work, I've briefly played with:
- wmii
- bspwm
- herbstluftwm

All of these are considered "tiling window managers," insofar as their default or intended behavior fits the tiling paradigm. And yet, every one of them allows for floating windows to one degree or another. With that in mind, how does the above definition of a "dynamic" window manager have any meaning? Where does that definition come from and why does it persist?

At the risk of giving dwm (THE dynamic window manager tongue) too much weight, here's what folks at suckless.org have to say about dynamic window management:

Dynamic window management states that it is the window manager’s job to manage windows - and not the user’s job to have to set up some specialized layout that will only work for one specific work scenario. ... In contrast to static window management, the user rarely has to think about how to organize windows, no matter what he is doing or how many applications are running at the same time. The window manager adapts to the current environment and helps the user manage and mold it to his needs, rather than forcing it to use a preset, fixed layout and trying to shoehorn all windows and applications into it.

In this context, "layout" seems to refer not to the specific pattern in which windows are arranged so much as the sum of all windows currently visible on the screen. The layout is said to dynamically change as windows move in and out of view.  Taking that strict definition, all the tag-based WMs---dwm, Awesome, and wmii---would count as "dynamic" window managers. We could also expand this to include any tiling window manager capable of effortlessly moving open windows in and out of view and changing their arrangement on-the-fly, as in the case of i3 and its internal container layouts, or herbsluftwm and its frames and "virtual monitor" support (hlwm can, with some effort, be made to closely mimic dwm). That definition would logically exclude any window manager which assigns windows to static workspaces and requires all windows to be visible at once, and only on those workspaces, such as Xmonad, MonsterWM and WMFS.

The table comparing tiling window managers, however, seems to simply define dynamic window managers as those that switch between predefined layout schemes, regardless of whether the visible windows change. In that case, "dynamic" just refers to the tiling method, distinguishing it as the opposite of "manual."

So how does all this fit together? What actually makes a window manager "dynamic?"

Offline

#2 2014-10-16 04:28:22

jasonwryan
Anarchist
From: .nz
Registered: 2009-05-09
Posts: 30,424
Website

Re: Just What Is A "Dynamic" Window Manager?

dwm's dynamic tagging epitomizes the concept for me; you can combine views on the fly for a particular tag, and decompose them just as easily. Reducing the concept of dynamism to layouts just displays either a fundamental misunderstanding of that model, or a paucity of imagination (only being able to conceive of tags as workspaces, the very paradigm dwm was designed to subvert).


Arch + dwm   •   Mercurial repos  •   Surfraw

Registered Linux User #482438

Offline

#3 2014-11-01 02:24:52

cocteau
Member
Registered: 2014-11-01
Posts: 2

Re: Just What Is A "Dynamic" Window Manager?

Could you elaborate or post a link to something which explains the concept and how it is different and better than other philosophies, perhaps with some examples?

A general trend I've noticed is that most documentation is procedural, explaining how rather than what and why.  Maybe this material would work well by video.  Programming language advocates do a decent job of this.

Last edited by cocteau (2014-11-01 02:25:12)

Offline

#4 2014-11-01 02:44:06

jasonwryan
Anarchist
From: .nz
Registered: 2009-05-09
Posts: 30,424
Website

Re: Just What Is A "Dynamic" Window Manager?

The best explanation I am aware of is this one about dwm: http://web.archive.org/web/201201201619 … nt/dwm-faq

There is a dwm video on the wiki page: it isn't that great, but you will get the general gist of it...


Arch + dwm   •   Mercurial repos  •   Surfraw

Registered Linux User #482438

Offline

#5 2014-12-10 12:36:06

effebi
Member
Registered: 2014-12-10
Posts: 1

Re: Just What Is A "Dynamic" Window Manager?

A reading that I found enlightening:
http://wongdev.com/blog/dwm-tags-are-not-workspaces/

Offline

#6 2014-12-10 13:02:41

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 29,449
Website

Re: Just What Is A "Dynamic" Window Manager?

I had never seen the claim that the dynamic adjective had anything to do with floating windows.  I always thought (and I'm pretty sure this is what some documentation said at one point) that dynamic - like the dwm excerpt suggests - indicates that the window manager choses where to put new windows, and adjusts currently open windows in order to place the new one.  The choice of where the window goes (the "layout") can be configured by the user, but they don't need to explictly specify a placement for each new window that is to be opened.

In contrast, static window managers work more like tmux, dvtm, and maybe screen.  Before a new window is opened, you must specify where it is to go.  Do you want to split the current window/frame horizontally or vertically, etc.  Some X11 WMs do this as well, I can't remember which ones - Herbsluft comes to mind, but I could be wrong as I only very briefly tried it.  I think i3 works this way as well, but might have options for more 'dynamic' behavior.

EDIT: I see what I've been calling 'static' is  frequently referred to as 'manual' tiling.  Although I've not specifically seen the adjectives static (opposite of dynamic) or automatic (opposite of manual) applied to tiling WMs, so perhaps I just assumed the dynamic and manual were seen as the two types.


"UNIX is simple and coherent..." - Dennis Ritchie, "GNU's Not UNIX" -  Richard Stallman

Offline

#7 2014-12-10 15:16:45

ratcheer
Member
Registered: 2011-10-09
Posts: 912

Re: Just What Is A "Dynamic" Window Manager?

At the risk of making an "empty post", this is a good thread and I appreciate it.

Tim

Offline

#8 2014-12-10 16:02:12

bstaletic
Member
Registered: 2014-02-02
Posts: 658

Re: Just What Is A "Dynamic" Window Manager?

i3wm is an x11 window manager that only does manual tiling,there's no option to makeit more dynamic.

Offline

#9 2014-12-10 16:25:30

ANOKNUSA
Member
Registered: 2010-10-22
Posts: 2,141

Re: Just What Is A "Dynamic" Window Manager?

bstaletic wrote:

i3wm is an x11 window manager that only does manual tiling,there's no option to makeit more dynamic.

Containers are manually arranged, but each container can hold multiple windows and has its own layout---stacked, tabbed, vertically tiled or horizontally tiled---which all new windows abide by, and which can be changed at will by the user. So there's sort of a mix of both worlds there. In general, though, i3 leans toward the manual side.

ratcheer wrote:

At the risk of making an "empty post", this is a good thread and I appreciate it.

Took a while for it to see some life. tongue I didn't respond to jwr's initial post because I basically agree with him---dwm is the finest example. What would one expect from the dynamic window manager?

Offline

Board footer

Powered by FluxBB