Re: [wmii] Question about column layout

From: Stefan Tibus <sjti_AT_gmx.net>
Date: Mon, 23 Jan 2006 16:08:39 +0100

Hello.

On Mon, Jan 23, 2006 at 03:11:39PM +0100, Jonas Pfenniger wrote:
> Anselm R. Garbe wrote:
> >On Mon, Jan 23, 2006 at 12:39:07PM +0100, Steffen Liebergeld wrote:
> >My current favorit idea is different. I think if a client
> >requests fullscreen size, no additional page should be created,
> >instead it should be raised to the front and cover everything
> >else on the same page. This would only apply if a client
> >requests the window manager to maximize it to the screen size
> >(like in mplayer -fs).
This corresponds to what I would expect to happen. However two questions
arise here: What to do with multiple fullscreen clients and how to
handle pop-ups?

> >Additionally I think of a new layout which is called max and
> >consists of a single frame, which takes arbitrary clients and
> >maximizes them to the whole available frame size. Each client
> >can be accessed through tabs.
Hmmm...I don't like those tabs that much, but I think it's just
another view onto the same principle. I would have thought of
a layered stack of clients. In principle one might generalize to
having a (nested) list of clients and the difference is in regard
of the naming only.
In this view LarsWM has something like this:
*-+ screen
  |-+ page 1
  | |-+ tiled layer
  | | |- frame 1 (main)
  | | |- frame 2 (aside)
  | | |- frame x (aside)
  | |
  | |-+ floating layer
  | |- frame 1
  | |- frame x
  |
  |- page x
Frames in the floating layer may be maximized and it's possible
to change (and move clients) between the tiled and the floating
layer.

Tabs provide a way to attach multiple clients to a single frame,
thus it provides some kind of nesting. The above proposed layout
looks like this:
*-+ screen
  |-+ page 1 (managed)
  | |- frame 1
  | |- frame 2
  | |- frame x
  |
  |-+ page 2 (maximized)
  | |-+ frame 1
  | |- client 1
  | |- client 2
  | |- client x
  |
  |- page x

An idea I'd favourize would be to have a stack of floating
(includes maximized) frames (layers) and one (or more) may
be assigned a management mode to include (sub)frames. Just
think of stacking the pages as they exist now in one single
page:
*-+ screen
  |-+ page 1
  | |-+ layer 1 (managed)
  | | |- frame 1
  | | |- frame x
  | |
  | |-+ layer 2 (float/max)
  | | |- frame
  | |
  | |-+ layer x (float/max)
  | |- frame
  |
  |- page x

The current cycling through frames on a float/max page would
turn into cycling between layers and within a managed layer
one could cycle between frames...
I have to admit this is very close to a traditional window
manager just with the addition of a frame whose subframes
are managed. On the other hand it's just a generalization of
having pages, frames, tabs and therein the clients:
The screen has a stack of pages, a page has a stack of layers,
a layer has a stack of frames (which it might manage or not)
and a frame may have a stack of tabs...

> You could use the same principle for new pages. When you create
> the new page, it uses the selected window. And when you close
> the window, the page is deleted.
Personally I dislike this idea, since it introduces additional
client resizings and redrawings, which can be annoying on slower
machines.

Regards,
Stefan
Received on Mon Jan 23 2006 - 16:09:16 UTC

This archive was generated by hypermail 2.2.0 : Sun Jul 13 2008 - 15:59:49 UTC